geoinfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...o geoinfo 2000 foi realizado em...

141
Anais do II Workshop Brasileiro de GeoInform´ atica GeoInfo 2000 12 e 13 de junho de 2000 Centro Anhembi, S˜ ao Paulo, SP, Brasil

Upload: others

Post on 06-Nov-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Anais do

II Workshop Brasileiro de GeoInformatica

GeoInfo 2000

12 e 13 de junho de 2000Centro Anhembi, Sao Paulo, SP, Brasil

Page 2: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Copyright c 2000 by the National Institute for Space Research – INPE.Printed in Brazil.

Permission to make digital or hard copies for personal or classroom use isgranted without fee provided that the copies are not made or distributed forprofit or commercial advantage and that copies bear this notice and the fullcitation on the first page.

Additional copies may be ordered prepaid from:

National Institute for Space Research – INPEImage Processing Division – DPICaixa Postal 51512201-970 S˜ao Jos´e dos Campos, SP, BrazilPhone: +55 12 345-6444Fax: +55 12 345-6468E-mail: [email protected]

Electronic copies of the papers in these proceedings are avaliable athttp://www.tecgraf.puc-rio.br/geoinfo2000/.

Page 3: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Prefacio

Este volume cont´em os 18 trabalhos apresentados no GeoInfo 2000, o II Workshop Brasileiro deGeoInformatica, nos dias 12 e 13 de junho de 2000, no Centro Anhembi, em S˜ao Paulo, SP.

O GeoInfo 2000 continua a s´erie iniciada com o GEO-INFO 1999 e visa reunir os interessados empesquisa em informac¸oes espaciais, com ˆenfase nos aspectos computacionais. O principal objetivodesses workshops anuais ´e servir como forum para a apresentac¸ao de novas id´eias.

O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar acomunidade acadˆemica da comunidade de usu´arios e da ind´ustria.

Foram submetidos 25 trabalhos para o GeoInfo 2000—mais do que o dobro do que em 1999. Essestrabalhos foram avaliados pela Comiss˜ao de Programa, com aux´ılio de revisores adicionais. Cadatrabalho foi avaliado por pelo menos dois especialistas no assunto do trabalho. Com base nessasavaliacoes, foram selecionados os 18 trabalhos que constam destes anais. Todo o processo de submiss˜aoe avaliac¸ao foi feito pela internet, o que permitiu que os curtos prazos pudessem ser cumpridos. Esseprocesso est´a completamente documentado nositedo GeoInfo 2000, que tamb´em contem versoes PDFdos artigos aceitos:http://www.tecgraf.puc-rio.br/geoinfo2000/.

Al em das sess˜oes de contribuic¸oes tecnicas, o GeoInfo 2000 teve tamb´em palestras dos convidadosinternacionais Max Egenhofer (University of Maine) e Jayant Sharma (Oracle). Os resumos dessaspalestras tamb´em constam destes anais.

Agradecemos a todos que contribu´ıram para o GeoInfo 2000: aos autores, pelo esforc¸o no preparo dosseus trabalhos; aos avaliadores, por contribu´ırem com a suaexpertise; e aos membros da Comiss˜ao dePrograma e da Comiss˜ao Organizadora, pelo seu tempo e dedicac¸ao. Agradecemos tamb´ema Divisaode Processamento de Imagens do INPE e ao TeCGraf (Grupo de Tecnologia em Computac¸ao Grafica daPUC-Rio), pelo apoio log´ıstico e secretarial, fundamentais para a realizac¸ao do GeoInfo 2000. A todos,muito obrigado!

O GeoInfo 2000 ´e um evento apoiado pela Sociedade Brasileira de Computac¸ao e foi parcialmentefinanciado pelo Conselho Nacional de Desenvolvimento Cient´ıfico e Tecnologico (CNPq), no ˆambitoda cooperac¸ao existente entre o CNPq e a National Science Foundation (NSF) sobre “CollaborativeResearch on Integrating Geographic Information”.

Clodoveu Davis, PRODABELLuiz Henrique de Figueiredo, IMPACoordenadores da Comissao de Programa

Gilberto Camara, INPECoordenador da Comissao Executiva

Page 4: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Comissao de ProgramaClodoveu Davis (PRODABEL) (coordenador)Luiz Henrique de Figueiredo (LNCC) (coordenador)Ana Carolina Salgado (UFPE)Carla Madureira (UFRJ)Claudia Bauzer Medeiros (UNICAMP)Flavio Torres (PETROBRAS)Frederico Fonseca (University of Maine)Geovane Magalh˜aes (CPqD)Joao Argemiro Paiva (INPE)Jugurta Lisboa Filho (UFV)Luiz Paulo Vieira Braga (UFRJ)Marcelo Tilio Monteiro de Carvalho (PUC-Rio)Marco Antonio Grivet Mattoso Maia (PUC-Rio)Margareth Sim˜oes (EMBRAPA)

Comissao ExecutivaGilberto Camara (INPE) (coordenador)Antonio Miguel Monteiro (INPE)Claudia Bauzer Medeiros (UNICAMP)Marcelo Gattass (PUC-Rio)

Avaliadores AdicionaisAluir Dal PozAnselmo Cardoso de PaivaClaudio Esperanc¸aLuiz Fernando MarthaMarcelo GattassMarco Antonio CasanovaMax EgenhoferPaulo Cezar CarvalhoRoberto de Beauclair SeixasSimone Diniz Junqueira BarbosaWaldemar Celes

Page 5: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Conteudo

Palestras convidadas

Computational Models for Spatio-Temporal Movement . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1Max Egenhofer

Oracle Spatial: Experiences with Extensible Databases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Jayant Sharma

Contribuicoes

Extracao Semi-Autom´atica de Rodovias Usando Programac¸ao Dinamica . .. . . . . . . . . . . . . . . . . . . . . . . . 3Aluir Porfırio Dal Poz, Peggy Agouris

Segmentac¸ao e Classificac¸ao Supervisionada para Identificar Pastagens Degradadas .. . . . . . . . . . . . . . 10Lucimar Moreira, Eduardo Delgado Assad

On the Use of Indicator Simulation for Numerical Predictions with Uncertainty Assessment . .. . . . . .16Carlos Alberto Felgueiras, Suzana Druck Fuks, Antonio Miguel Vieira Monteiro, Eduardo Celso GerbiCamargo

Extracao de Dados em Sistemas de Informac¸oes Ambientais: Arquitetura e Esquema de Metadados.22Helio Alvaro de Mello Perez, Ana Maria de Carvalho Moura, Asterio Kiyoshi Tanaka

Extensoes ao Modelo OMT-G para Produc¸ao de Esquemas Dinˆamicos e de Apresentac¸ao . . . . . . . . . . 29Clodoveu A. Davis Jr., Alberto H. F. Laender

Towards a Unified Framework for Geographical Data Models .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Gilberto Camara, Antonio Miguel Vieira Monteiro, Joao Argemiro Paiva, Jonas Gomes, Luiz Velho

Ontologias e Interoperabilidade Semˆantica entre SIGs . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Frederico Fonseca, Max Egenhofer, Karla A. V. Borges

Trading e Agentes em Sistemas de Informac¸oes Geogr´aficas Distribu´ıdos .. . . . . . . . . . . . . . . . . . . . . . . 53Sonia Virgınia Alves Franc¸a, Carlos Andre Guimaraes Ferraz

Arquiteturas Cliente-Servidor para Bibliotecas Geogr´aficas Digitais . .. . . . . . . . . . . . . . . . . . . . . . . . . . . 60Jose Roberto Osses, Joao Argemiro de Carvalho Paiva, Gilberto Camara

Modelagem Geom´etrica 3D e Analise Espacial de Sistemas C´arsticos com o uso de OpenGL e SQL 68Jose Antonio Ferrari, Alain Mangin

Page 6: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Servlets e COM para Visualizac¸ao de Dados Geogr´aficos na Web.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Arlindo Cardarett Vianna, Anselmo Cardoso de Paiva, Marcelo Gattass

Uma Metodologia para Gerac¸ao de Modelos de Elevac¸ao a partir de Curvas de N´ıvel . . . . . . . . . . . . . . 82Roberto de Beauclair Seixas, Luiz Henrique de Figueiredo, Claudio Antonio da Silva, Paulo CezarPinto Carvalho

Cartografia e Sistemas de Informac¸ao Geogr´afica como Sistemas Semi´oticos: Uma AnaliseComparativa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Alysson Bolognesi Prado, M. Cecılia C. Baranauskas, Claudia M. Bauzer Medeiros

Aplicacao de Racioc´ınio Baseado em Casos a Sistemas de Apoio `a Decisao Ambiental . . . .. . . . . . . . 96Daniel dos Santos Kaster, Claudia Bauzer Medeiros, Heloısa Vieira da Rocha

Exchange Mechanism for Global Mapping . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104Teresa Cristina Veiga

Fatores Determinantes de Desempenho de M´etodos de Acesso Multidimensionais. . .. . . . . . . . . . . . .112Ricardo Rodrigues Ciferri, Ana Carolina Salgado

A Comparison among Different Synchronized Tree Traversal Algorithms for Spatial Joins . . . .. . . . 120Sandro Danilo Gatti, Geovane Cayres Magalhaes

TerraLib: Technology in Support of GIS Innovation . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Gilberto Camara, Ricardo Cartaxo Modesto de Souza, Bianca Maria Pedrosa, Lubia Vinhas, AntonioMiguel Vieira Monteiro, Joao Argemiro Paiva, Marcelo Tilio de Carvalho, Marcelo Gattass

Page 7: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Indice de autoresAlain Mangin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Alberto H. F. Laender . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Aluir Porfırio Dal Poz . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Alysson Bolognesi Prado . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Ana Carolina Salgado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112Ana Maria de Carvalho Moura . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Anselmo Cardoso de Paiva. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Antonio Miguel Vieira Monteiro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16, 37, 126Arlindo Cardarett Vianna .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Asterio Kiyoshi Tanaka .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Bianca Maria Pedrosa .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Carlos Alberto Felgueiras. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Carlos Andre Guimaraes Ferraz . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Claudia Bauzer Medeiros .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88, 96Claudio Antonio da Silva. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82Clodoveu A. Davis Jr. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Daniel dos Santos Kaster . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96Eduardo Celso Gerbi Camargo . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Eduardo Delgado Assad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Frederico Fonseca . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Geovane Cayres Magalh˜aes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120Gilberto Camara . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37, 60, 126Heloısa Vieira da Rocha . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Helio Alvaro de Mello Perez. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Jayant Sharma. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Jonas Gomes .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Jose Antonio Ferrari. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Jose Roberto Osses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60Joao Argemiro Paiva. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37, 60, 126Karla A. V. Borges .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Lucimar Moreira . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Luiz Henrique de Figueiredo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82Luiz Velho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Lubia Vinhas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126M. Cecılia C. Baranauskas . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Marcelo Gattass. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76, 126Marcelo Tilio de Carvalho. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Max Egenhofer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1, 45Paulo Cezar Pinto Carvalho. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Page 8: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Peggy Agouris . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Ricardo Cartaxo Modesto de Souza. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Ricardo Rodrigues Ciferri .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112Roberto de Beauclair Seixas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82Sandro Danilo Gatti. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120Suzana Druck Fuks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Sonia Virgınia Alves Franc¸a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53Teresa Cristina Veiga . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

Page 9: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Computational Models for Spatio-Temporal Movement

MAX EGENHOFER

Department of Spatial Information Science and Engineering, University of [email protected]

Abstract. Movement is change in location over time. A geospatial lifeline model movement as a time-stampedrecord of locations that an individual has occupied over a period of time. This paper distinguishes three types ofgeospatial lifelines. Lifeline steps capture discrete movement associated, for example, with modeling residentialhistories. Lifeline threads model the likely locations that an object might pass through while continuously movingbetween two locations. Lifeline necklaces offer different semantics as they describe the set of all possible locationsthat an individual might pass through when moving between A and B. We demonstrate the rich set of methods toquery lifeline necklaces and their elementary building blocks, lifeline beads, through analytical geometry opera-tions upon cones.

Page 10: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Oracle Spatial: Experiences with Extensible Databases

JAYANT SHARMA

[email protected]

Abstract. Object relational databases have become the new standard for addressing the growing data managementand analysis needs of non-traditional database applications such as Spatial Information Systems. Two critical issuesmust be resolved in order to effectively meet the requirements of these applications. They are: (i) representationand (ii) content based search of spatial data. Oracle Spatial addresses these issues by providing a spatial datatype (SDO GEOMETRY), an indexing mechanism, and functions/operators on the spatial data type. It enablesspatial data to be stored, accessed, indexed, and nalyzed quickly and efficiently in an Oracle8i database. This givesapplication developers the facility to store all locational information within an ndustry standard database serverwithout having to resort to custom-built external indexes and functions to get the performance they need. Usersof spatial data also gain access to standard Oracle8i features such as bigger database size limits, faster backup andrecovery, and Java in the database.

Page 11: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Extração Semi-Automática de Rodovias Usando Programação Dinâmica

ALUIR PORFÍRIO DAL POZ1

PEGGY AGOURIS2

1UNESP- Universidade Estadual Paulista, Rua Roberto Simonsem, 305, 19060-9000 PresidentePrudente, SP, [email protected]

2Dept. of Spatial Information Science and Engineering - University of Maine5711 Boardman Hall, Orono, Maine 04469-5711, USA

[email protected]

Resumo. Este artigo apresenta um método de extração semi-automática de rodovias em imagensde satélite ou em fotografias aéreas digitalizadas, visando a captura e atualização de base de dadosde SIG (Sistema de Informação Espacial). Basicamente, um modelo genérico de rodovia éformulado usando 6 propriedades básicas de rodovia, sendo resolvido através do algoritmo deprogramação dinâmica. Alguns pontos sementes descrevendo grosseiramente a rodovia devem serfornecidos pelo operador. Os fundamentos matemáticos do método e os resultados experimentaissão apresentados e discutidos neste artigo.

Abstract. This paper presents a semi-automatic road extraction approach from aerial and satelliteimages for GIS (Geographic Information System) road network updating and capture. Basically, ageneric road model is formulated using six basic road properties, which is solved sequentially by adynamic programming algorithm. A few seed points describing coarsely the road need to beprovided by the operator. The mathematical fundamentals of the methods and experimental resultsare presented and discussed in this paper.

1 IntroduçãoA coleta e a atualização de dados para SIG são geralmenterealizadas através de fotografias aéreas e imagens desatélite. Diversas pesquisas sobre extração automática esemi-automática de rodovias em imagens digitais têm sidorealizadas por especialistas das áreas de VisãoComputacional e Fotogrametria Digital, desde a década de70. Trabalhos pioneiros nesta área são encontrados emBajcsy e Tavakoli (1976) e Quam (1978). O critério maiscomum usado para classificar os métodos de extração derodovias está relacionado com a necessidade ou não deinterferência do operador humano com o sistema deextração, dando origem aos denominados métodosautomáticos e semi-automáticos. É possível identificardois esquemas básicos de extração semi-automática derodovias. Num primeiro, o operador necessita fornecer aposição e a direção da rodovia em um ponto inicial, apartir do qual o restante da rodovia é extraída.Normalmente se empregam algoritmos baseados naanálise de consistência de perfis da superfície intensidadeextraídos transversalmente ao eixo da rodovia (Quam,1978; Vosselman e de Knecht, 1995) ou na análise debordas anti-paralelas (Nevatia and Babu, 1980, Dal Poz etal., 2000a) ou na combinação entre ambos princípios

(McKeown e Denlinger, 1988). Num segundo, o operadornecessita fornecer alguns pontos sementes descrevendogrosseiramente a forma e a posição da rodovia. Opolígono inicial pode então ser refinado através dealgoritmos baseados na otimização global porprogramação dinâmica ou no princípio do contorno ativoou snakes (Gruen e Li, 1997, Li, 1997, Dal Poz et al.,2000a). Se estes métodos forem combinados com métodosde detecção automática de pontos sementes, como umencontrado em Zlotnick e Carnine (1993), a metodologiaresultante poderia ser considerada como automática.Entretanto, uma metodologia originalmente desenvolvidapara ser totalmente automática é apresentada emBaumgartner et al. (1997, 1999). Neste método, contexto(isto é, relações entre as rodovias e outros objetos) eanálise de bordas ao longo do espaço-escala sãocombinados para extrair automaticamente as rodovias.Outros exemplos de métodos automáticos são encontradosem Barzohar e Cooper (1996) e Ruskoné et al. (1994).

A ausência de uma teoria unificada de visãocomputacional tem levado ao surgimento de uma grandevariedade de técnicas. Como, até então, nenhuma soluçãoautomática provou ser competitiva frente a habilidadenatural do operador humano, soluções semi-automáticastêm sido propostas combinando a habilidade de

Page 12: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

interpretação do operador humano com a capacidade demedida do computador. A metodologia a ser apresentadaneste artigo baseia-se numa solução de um modelomatemático geral de rodovia através do algoritmo deprogramação dinâmica proposta em Li (1997).

Na seção 2 são apresentados os fundamentos teóricosdo método para extração semi-automática de rodoviasatravés do algoritmo de programação dinâmica. Osresultados experimentais obtidos são apresentados naseção 3. Finalmente, a seção 4 apresenta as principaisconclusões.

2 Extração de rodovias usando programaçãodinâmica

A metodologia de extração a ser apresentada consistebasicamente em resolver um modelo genérico de rodoviaatravés de uma estratégia de otimização global usandoprogramação dinâmica. Para inicializar o processo deextração é necessário que um operador forneça algunspontos sementes descrevendo grosseiramente a rodovia.Este procedimento dá origem a um polígono inicial, a serrefinado através de uma estratégia iterativa. Em cadaiteração novos vértices aproximados são interpoladoslinearmente entre os pares de vértices preexistentes. Opolígono resultante é então refinado resolvendo o modelogeral de rodovia usando a estratégia de otimização globalatravés de programação dinâmica. O processo convergequando os novos vértices inseridos não contribuem maiscom o refinamento do polígono descrevendo a rodovia.

Nas próximas subseções serão apresentados omodelo geral de rodovia e alguns detalhes acerca de suasolução usando o algoritmo de programação dinâmica.Devido à limitação de espaço, o algoritmo deprogramação dinâmica não é apresentado neste artigo.Para uma compreensiva leitura sobre esta técnica,recomenda-se consultar Ballard e Brown (1982) e Li(1997).

2.1 Modelagem matemática de uma rodoviaA tarefa de extração de rodovias em uma imagem digitalfica mais viável à medida que mais conhecimentos sobrerodovias forem incorporados num modelo genérico.

A modelagem matemática (Li, 1997; Grüen; Li,1997) da entidade rodoviária (figura 1) é desenvolvidacom base em seis propriedades básicas, sendo trêsfotométricas e três geométricas. Primeiro, as propriedadesfundamentais são apresentadas, juntamente com asrespectivas formulações matemáticas. Posteriormente, omodelo geral é apresentado.

fundo

Figura 1 Elementos básicos de uma rodovia

eixolargura

fundo

R

bordas

A primeira propriedade é fotométrica e estatui que ospixels de uma rodovia são mais claros que os de fundo.Isto significa que uma rodovia em uma imagem digitalpode ser considerada como uma faixa estreita e contínuade alta intensidade de brilho, margeada por regiões(fundos) de baixa intensidade. Portanto, a soma dosquadrados dos tons de cinza da imagem (G(x,y)) ao longoda rodovia é máxima, isto é,

Ep1= ∑ →i

ii Máx)y,(x2G (1)

A segunda propriedade é também fotométrica efundamenta-se no conhecimento a priori de que o materialde rolagem, geralmente asfalto ou concreto, não variamuito em curtas distâncias. Isso implica em respostasespectrais similares em segmentos curtos. Portanto, umaexpressão matemática baseada no conceito dehomogeneidade pode ser escrita, como segue,

Mín]G)y,[G(xEi j

2DS

djjp2i

m →∑ ∑ −= (2)

onde, im

DS

dG é dada pela expressão 3.

i

jjj

DS

d DS

)y,G(xG i

m

∑= (3)

Nas equações 2 e 3, o índice j é usado para indexar

pontos ao longo de cada vetor (i, i+1). A distância iDS édada por,

2i1i

2i1ii )x(x)y(yDS −+−= ++ (4)

Page 13: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

A terceira propriedade é uma generalização das 2primeiras. Visto que uma rodovia é uma feição linear dealta intensidade de brilho, e que os pontos mais distantesdessa curva têm menor influência na definição da mesma,pode-se escrever a seguinte expressão matemática pararepresentar esta propriedade,

Máx)y,(xGep3E ii2

i

d 2i →∑= − (5)

onde,

Ø di é a distância entre um ponto (xi, yi) e a curvadiscreta representando a rodovia; e

Ø 2ide− é uma função gaussiana, inversamente

proporcional ao quadrado de di.

A quarta propriedade reflete uma característicageométrica fundamental de uma rodovia, isto é, asuavidade. Por questões práticas, uma rodovia énormalmente composta por segmentos retos e curvassuaves, geralmente circulares. Li (1997) apresenta aseguinte fórmula (figura 2),

Eg= MínDS)]/a2cos(a[2i i1ii →∑ −− + (6)

onde,

Ø 1ii aa +− é o ângulo de deflexão entre doisvetores sucessivos da entidade discretarepresentando a rodovia ; e

Ø iDS é a distancia entre o vértice i e i-1 ou i+1.

1ii aa +−iDS

i-1

i

i+1

Figura 2 Curvatura no vértice i

iDS

A quinta propriedade estatui que a curvatura local deuma rodovia possui um limite máximo, isto é,

T|aa|C 1iigi <−= + (7)

onde, T é um limiar.

A sexta propriedade está relacionada com o fato dalargura da rodovia não variar significativamente.Entretanto, esta propriedade já está implícita na 3a

propriedade.

Considerando agora que uma rodovia pode serrepresentada por um polígono de n vértices, o seguinte parde equações pode ser usado para modelar o objeto rodovia(Li, 1997),

=−∑ ++−=

=+−

+=

1n

1i1ii1iiE

i1ii

1-n

1321

)p,p,(p

)DS)]/acos(ai

)[1cEpbEp((EpE (8)

Ci= | 1ii aa +− |<T, i= 1, ..., n-1 (9)

onde, b e c são duas constantes positivas.

Portanto, o modelo matemático de rodovia écomposto por 2 funções:

Ø E: corresponde à função objetivo (eq. 8),podendo ser decomposta em funções Ei

dependendo apenas de três pontos vizinhos (pi-1,pi, pi+1) do polígono que representa a rodovia; e

Ø Ci: devido a sua definição (eq. 9), também édenominada de injunção de desigualdade epermite limitar o espaço de busca do problema,pois a função E é apenas avaliada para pontosque satisfaçam Ci< T.

O modelo matemático 8 é resolvido seqüencialmenteatravés do algoritmo a ser apresentado na próxima seção.

2.2 Solução para o modelo matemático geral

O princípio geral da extração de rodovias através daprogramação dinâmica é mostrada na figura 3. Comomostra esta figura, nem todos os vértices estão inter-relacionados simultaneamente. Nesse caso, a programaçãodinâmica é um algoritmo eficiente para resolver oproblema de otimização (Ballard e Brown, 1982). Oproblema consiste então em encontrar o melhor caminhoentre A e N. Pode ainda ser observado na figura 3que:

Ø a entidade a ser extraída é descrita por umpolígono de n vértices;

Ø os vértices que definem o caminho ótimo, isto é,a rodovia extraída, são calculados a partir dasrespectivas posições aproximadas. Cada vérticemove em torno de sua respectiva posiçãoaproximada, sendo que a área de busca é

Page 14: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

normalmente tomada como uma pequena janela.As várias possibilidades que os vérticesaproximados podem assumir implicam nageração de uma série de polígonos; e

Ø a seqüência de vértices que define o caminhoótimo é tal que maximiza a função objetivo E esatisfaz a injunção Ci< T.

Figura 3 Princípio de método

Como já foi mencionado, geralmente a janela debusca é bidimensional. Sendo n o número de vértices e mo número de possibilidades que cada vértice pode assumirdentro da janela de busca, o esforço computacional seráda ordem de O(nm3). Portanto, o uso de janelas maiorespara aumentar o raio de convergência aumentariasignificativamente o esforço computacional. Duasestratégias podem ser exploradas para diminuir o númerode elementos (m) na janela de busca (Li, 1997):

Ø uso de uma janela de busca unidimensional: nessecaso, os elementos da janela de busca são tomadosnuma direção ortogonal ao polígono inicial no pontoPi. Esse procedimento possibilita manter o raio deconvergência, mas o esforço computacional é bemmenor; e

Ø uso de janelas de resolução variada: esta estratégiaestá relacionada à teoria da pirâmide de imagem(Ballard e Brown, 1982), onde a base corresponde àimagem original e as outras camadas, na direção dotopo, correspondem à mesma imagem, mas comresoluções cada vez menores. Uma solução alternativa,computacionalmente mais atrativa e que produz bomresultado, baseia-se na computação dos elementos dajanela de busca em intervalos diferentes. Como serámostrado, a seguir, o processo de extração é iterativo,permitindo o refinamento sucessivo do polígonoinicial. Portanto, intervalos com um maior número depixels são usados no início, permitindo a obtenção deum grande raio de convergência. À medida que oprocesso de convergência vai sendo atingido, ointervalo entre pontos na janela de busca vai sendodiminuído também, até atingir o valor do sub-pixel,permitindo a obtenção de um resultado final com altaprecisão.

À primeira vista, a descrição de uma rodovia atravésde um polígono pode ser realizada com vérticeseqüidistantes. Como nesse caso as posições dos vérticesnão estão relacionadas com a forma da curva, aquantidade de pontos é geralmente bem maior que anecessária para descrevê-la. Uma solução mais adequadaé apresentada em Li (1997). Entretanto, algumasmodificações foram realizadas na versão original doalgoritmo. A figura 4 ilustra o princípio do processo deotimização usando programação dinâmica. Inicialmente,são fornecidos vários pontos sementes, cujas localização edistribuição são grosseiras (figura 4(a)). Ligando-se estespontos, obtém-se a primeira aproximação para a rodovia.O processo de refinamento do polígono inicial é iterativo,como segue:

Ø 1a iteração: entre cada par de pontos sementes éinserido um novo ponto através de interpolação linear(figura 4(b)). As linhas tracejadas (figuras 4(b) e 4(c))representam as janelas de busca. O procedimento deotimização através da programação dinâmica gerauma nova aproximação para a rodovia (figura 4(c)); e

Ø demais iterações: procedimentos idênticos sãorepetidos nas demais iterações.

O processo converge quando numa determinadaiteração todos os novos pontos inseridos são colinearesaos pontos otimizados na iteração anterior. O resultadoapós a convergência é ilustrado na figura 4(d).

Page 15: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

(a) Polígono inicial

(b) 1a iteração - Interpolação linear de novos vértices

(c) 1a iteração - Resultado após a otimização

(d) Resultado após a convergência da otimização

Figura 4 Ilustração do processo de otimização

3 Resultados e discussões

O método apresentado na seção 2 foi implementado emlinguagem Borland C++ para o ambiente Windows-PC.

Foram utilizadas duas imagens reais (500x500pixels) de média resolução, sendo que cada pixelcorresponde a aproximadamente 2m no terreno. Essasimagens foram obtidas junto a home page do SistemaBADGER (http://badger.parl.com/), que é composta porum software para a distribuição via Internet de mapas eimagens da Baia de São Francisco, Califórnia, EUA.

Figura 5 Resultados obtidos com a Imagem-1

O primeiro experimento foi realizado com aImagem-1 (figura 5), cujo conteúdo é bastantedesfavorável. A largura da rodovia é bastante irregular evárias obstruções encontram-se presentes numa região decurvatura acentuada. Os resultados obtidos e os pontossementes usados foram sobrepostos sobre a imagemprocessada. Esses resultados podem ser consideradosbastante satisfatórios, pois são poucos os trechos queprovavelmente estariam em desacordo com a visãonatural. Além disso, a rodovia em análise distancia-seconsideravelmente do modelo ideal de rodovia - porexemplo, largura irregular, bordas irregulares, presença deobstáculos e sombras, etc. O fator inerente a este exemploque beneficia o algoritmo de programação dinâmica é obom contraste entre a superfície de rolagem e asadjacências. Nesse caso, as irregularidades geométricas(largura, borda) não são fatores críticos. A transposição deirregularidades na superfície de rolagem (por exemplo,árvores e sombras) é facilitada pela estratégia adotadaenvolvendo a inserção de novos vértices a cada iteração.

Page 16: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Embora todos os vértices já calculados, inclusive os queestão sendo inseridos, permaneçam livres para variar,maior restrição é imposta à medida que as iterações sãorealizadas. Dessa forma, a colocação de pontos sementespara evitar, no início, que novos vértices caiam sobre oupróximos aos obstáculos diminui a influência dos mesmosna otimização global.

Figura 6 Resultados obtidos com a Imagem-2

A Imagem-2 (figura 6) apresenta uma rodoviaprincipal com baixíssimo contraste em relação àsadjacências. Os resultados obtidos e os pontos sementesusados foram sobrepostos sobre a imagem de entrada.Este resultado pode ser considerado excelente, podendoinclusive ser considerado bem razoável por umobservador humano. Embora não haja obstáculos esombras, em geral a rodovia é muito mal definida,existindo um trecho onde é difícil para um observadorhumano definir exatamente onde passa a rodovia. Valetambém ressaltar a boa qualidade do eixo extraído. Apesardo baixo contraste da rodovia em relação as adjacências,existe um padrão não bem definido, cujo máximo dafunção objetivo ocorre nos pontos que definem a rodoviaextraída. Nota-se também que em certos trechos existemregiões estreitas mais clara na faixa mais central darodovia, fator que provavelmente deve ter contribuídopara o bom resultado obtido.

4 Conclusões

Neste artigo foi apresentado e avaliadoexperimentalmente um método para extração de rodoviasem imagens de satélite ou fotografias aéreas digitalizadas.Este método pode ser usado na captura semi-automática

de dados para base de dados de SIG. Neste caso, ooperador humano realiza a tarefa de reconhecimento darodovia e identifica alguns pontos sementes descrevendogrosseiramente a forma e a posição da rodovia. Aidentificação de pontos sementes pode também serrealizada automaticamente, levando a um processo deextração de rodovias totalmente automatizado. Uma outraaplicação da metodologia apresentada é na verificação derodovias preexistentes, numa base de dados de SIG, emimagens recentes (Dal Poz e Agouris, 2000b). Nesse caso,os pontos sementes necessários podem ser extraídosautomaticamente da própria base de dados usandocritérios topológicos e geométricos.

Para o tipo de imagem testada, i. e., imagens demédia resolução, o método mostrou ser robusto frente àpresença de obstruções, sombras, baixo contraste e outrasirregularidades. A qualidade dos resultados foramcompatíveis com os que seriam obtidos por um operadorhumano. Apesar de ser necessária uma pequenaintervenção do operador para inicializar o processo, atarefa cansativa e demorada de realizar medidas precisasda rodovia é deixada a cargo do algoritmo deprogramação dinâmica.

A continuidade desta pesquisa deverá abranger trêsdireções. Primeiro, como as características do métodoapresentado são mais apropriadas para os casosenvolvendo imagens de baixa e média resolução, algumasmelhorias serão necessárias para os casos envolvendoimagens de alta resolução. Segundo, visando uma melhoravaliação do potencial do método, será necessária arealização de um maior número de experimentosenvolvendo, basicamente, imagens de resolução econteúdo diferentes. Finalmente, tendo em vista asaplicações do método, serão investigadas as possibilidadespara a inicialização automática do processo de extração.

Agradecimentos

Este trabalho foi apoiado pela FAPESP (Fundação deAmparo à Pesquisa do Estado de São Paulo, Brasil),Processo no. 1998/15553-3, e NSF (National ScienceFoundation, USA), Processo no. IRI-9702233.

Referências bibliográficas

[1] R. Bajcsy, M. Tavakoli, "Computer recognition ofroads from satellite picture," IEEE Transactions onSystems, Man, and Cybernetics 6 (1976), 76--84.[2] D. H. Ballard, C. M. Brown, Computer Vision,Prentice-Hall, Englewood Cliffs, New Jersey, 1982.[3] M. Barzohar, D. Cooper, "Automatic finding of mainroads in aerial images by using geometric-stochastic

Page 17: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

models and estimation," IEEE Transactions on PatternAnalysis and Machine Intelligence 18 (1996), 707--721.[4] A. Baumgartner, C. Steger, H. Mayer, W. Eckstein, H.Ebner, "Update of road in GIS from aerial imagery:verification and multi-resolution extraction," In: Int. Arch.Photogramm. Remote Sensing, 53--58, 1996.[5] A. Baumgartner, C. Steger, H. Mayer, W. Eckstein,"Multi-resolution, semantic objects, and context for roadextraction," In: Workshop on Semantic Modeling for theAcquisition of Topographic Information from Images andMaps. Birkhäuser Verlag, Basel (Schweiz), 140--156,1997.[6] A. Baumgartner, C. Steger, H. Mayer, W. Eckstein, H.Ebner, "Automatic road extraction in rural areas," In: Int.Arch. Photogramm. Remote Sensing, 107--112, 1999.[7] A. P. Dal Poz, S. Gyftakis, P. Agouris, "Semi-automatic road extraction: Comparison of methodologiesand experiments", In: DC 2000 ASPRS AnnualConference, Washington, DC, USA, May 2000a (noprelo).[8] A. P. Dal Poz, P. Agouris, "Georeferenced roadextraction and formulation of hypothesis for new roadsegments ", In: SPIE's 14th Annual InternationalSymposium on Aerospace/Defence Sensing, Simulation,and Controls - Conference Automated Geo-Spatial Imageand Data Exploitation, Orlando, FL, USA, April 2000b

(no prelo).[9] A. Gruen, H. Li, "Semi-automatic linear featureextraction by dynamic programming and LSB-Snakes,"Photogrammetric Engineering & Remote Sensing 63(1997), 985--995.[10] H. Li, Semi-automatic road extraction from satelliteand aerial images. PhD thesis, Report No. 61, Institute ofGeodesy and Photogrammetry, ETH-Zurich, Switzerland,1997.[11] D. M. McKeown, J. L. Denlinger, "Cooperativemethods for road tracking in aerial imagery," In:Workshop of Computer Vision and Pattern Recognition,662--672, 1988.[12] R. Nevatia, K. R. Babu, "Linear feature extractionand description," Computer Graphics and ImageProcessing 13 (1980), 257--269.[13] L. H. Quam, "Road tracking and anomaly detectionin aerial imagery," In: Image Understanding Workshop,51--55, 1978.[14] R. Ruskoné, S. Airault, O. Jamet, "A road extractionsystem using the connectivity properties of the network,"Zeitschrift für Photogrammetrie und Fernerkundung 5(1994), 174--180.[15] G. Vosselman, J. de Knecht, "Road tracing by profilematching and Kalman filtering," In: Workshop onAutomatic Extraction of Man-Made Objects from Aerialand Space Images. Gruen, A. O. Kuebler, and P. Agouris(eds), Birkhäuser, Basel-Boston-Berlin, 265--274, 1995.

[16] A. Zlotnick, P. D. Carnine, "Finding roads seeds inaerial images," CVGIP: Image Understanding 57(1997),243--260.

Page 18: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Segmentação e classificação supervisionada para identificar

pastagens degradadas.Lucimar Moreira

Eduardo Delgado Assad.

Embrapa Cerrados, BR 020, Km 18. 73.301-970 - Planaltina – DF

E. mail: [email protected]

[email protected]

Abstract- One of the major environmental issues in the Brazilian Cerrado region is the identification

of the levels of degradation in the cultivated pastures. About 50 million hectares of Cerrado is currently

covered by cultivated pastures, with different degradation levels. This paper assesses the performance of

supervised classification per region for identifying different degradation levels in cultivated pastures. The

study area is located in the córrego Lamarão Watershed , Federal District. The satellite images were processed

by using the SPRING/INPE Geographical Information System. We were able to identify five levels of

cultivated pasture degradation.

Introdução

Na década de 1970, houve uma grande

expansão da produção pecuária devido,

especialmente, ao baixo valor das terras, a oferta de

crédito e o surgimento de espécies forrageiras com

alta capacidade de adaptação ao clima e a baixa

fertilidade dos solos. Atualmente, a atividade de

pecuária bovina é responsável por 44% do rebanho

bovino nacional. Este rebanho tem nas pastagens

cultivadas sua principal fonte alimentar. Por outro

lado, o uso indiscriminado das áreas de pastagem

com elevada carga animal e a desatenção às

necessidades do requerimento na correção e

fertilização dos solos, impôs um processo de

extrativismo, pela exportação de produto animal,

condicionando a perda da capacidade produtiva das

pastagens. Entende-se por degradação de pastagens

o processo evolutivo de perda de vigor, de

produtividade, de capacidade de recuperação

natural das pastagens para sustentar os níveis de

produção e de qualidade exigidos pelos animais,

assim como, a de superar os efeitos nocivos de

pragas, doenças e invasoras, culminando com a

degradação avançada dos recursos naturais, em

razão de manejos inadequados (Macedo & Zimmer,

1993). Este trabalho teve como objetivo verificar o

desempenho da segmentação e classificação

supervisionada por regiões, implementadas no

SPRING/INPE, para identificar áreas com

diferentes fases de degradação de pastagem.

Área de estudo: A microbacia hidrográfica

do córrego Lamarão localiza-se na parte Sudeste do

Distrito Federal, entre as coordenadas geográficas

15° 54’ 50” a 16° 01’ 10” de latitude Sul e 47° 25’

30” a 47°36’ 30” de longitude Oeste. Possui área

aproximada de 9.630 ha.

Page 19: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Materiais e métodos

Imagens TM Landsat 5 órbita 221/71,

referentes à 10/10/1987, 31/08//1996 e 30/05/97;

Mapa planialtimétrico 1:100.000 da

Diretoria do Serviço Geográfico;

Levantamento semi-detalhado dos solos da

Bacia do Rio Jardim, na escala 1:50.000;

Software SPRING/INPE.

De acordo com Spain & Gualdrón (1988) e

Barcellos (1997) o parâmetro cobertura vegetal

representa um dos elementos de discriminação da

fase de degradação das pastagens. A cobertura do

solo, associada a outros componentes bióticos como

revegetação por espécies nativas e exóticas e

termiteiros constitui indicador do processo de perda

da capacidade produtiva das pastagens. As fases de

degradação de pastagem, segundo Spain &

Gualdrón (1988) estão apresentadas na Tabela 1.

TABELA 1. Fases de degradação de pastagens

segundo os parâmetros limitantes e seu nível de

degradação.

Fases de

degradação

Parâmetros limitantes Deterioração

1 Vigor e qualidade Leve

2 Fase 1 + baixa população Moderado

3 Fase 1 + 2 + e invasoras Forte

4 Fase 1 + 2 + 3+ formigas e

cupins

Muito forte

5 Fase 1 + 2 + 3 + 4 e baixa

cobertura do solo

Muito forte

FONTE: Adaptado de Spain & Gualdrón (1988).

Segmentação de imagem - Uma técnica de

segmentação de imagens foi desenvolvida para o

sistema SPRING e possui três funções principais:

Segmentação, Treinamento e Classificação. A

execução do processo de segmentação de imagens

exige a definição das bandas espectrais e dos

limiares de similaridade e de área. Esses parâmetros

são responsáveis pela qualidade da segmentação

que servirá de base para a classificação temática

posterior. Foram definidas as bandas espectrais 1 a

5 e 7 do Landsat TM 5. Os critérios de aceitação e

rejeição dos limiares foram analisados em

decorrência da separação coerente dos tons de cinza

visualmente distintos. Como exemplo de trabalhos

realizados utilizando limiares diferentes, citam-se

Batista et al. (1994) que utilizaram os valores de 8 e

10 para os limiares de similaridade e 4 e 9 para os

de área, para estimar a extensão do

desflorestamento. Na avaliação do desempenho das

redes neurais para o monitoramento do

desflorestamento Machado et al. (1994) utilizaram

o valor 10, tanto para o limiar de similaridade como

para o de área. Para o estudo temporal da cobertura

vegetal e uso da terra Watrin (1994) utilizou os

limiares de similaridade 8 e 10 e o limiar 10 de

área. Saiz & Valério Filho (1995) utilizaram a

técnica de transformação IHS e Segmentação para

caracterizar o uso da terra e a cobertura vegetal, na

região de Tandil, Província de Buenos Aires,

Argentina. Os valores de similaridade e de área

usados foram de 8 e 10, respectivamente.

Nascimento (1997) realizou vários testes de

segmentação para mapear unidades de paisagem na

Amazônia e o melhor resultado foi obtido com os

valores de 12 para similaridade e 10 para o valor de

área.

A avaliação do processo de segmentação foi

realizada por meio da comparação visual entre a

imagem segmentada e pela sobreposição da imagem

realçada. Essa metodologia foi adotada, pois de

acordo com Cross et al. (1988); essa é uma forma

Page 20: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

qualitativa, mas eficiente para avaliar a

segmentação.

Após a avaliação das imagens segmentadas e

definido o par de limiares (similaridade e área) mais

adequado, fez-se a classificação dessa imagem que

requer que do analista a especificação do limiar de

aceitação para a separação ou o agrupamento de

classes distintas.

A principal vantagem de trabalhar com

classificação por regiões é que essa técnica fornece

informações de natureza espacial, que não podem

ser extraídas individualmente de pixels e que são

normalmente consideradas durante o processo de

análise visual de imagens.

Classificação da imagem. Para a

classificação da imagem segmentada, foram

selecionadas algumas áreas de treinamento para

cada classe e fornecidas ao classificador para

caracterização individual das classes temáticas.

Após adquirir amostras para todos as classes, as

imagens foram classificadas, utilizando a distância

de Bhattacharyya.

Resultados e discussão

Para a segmentação o limiar mais adequado

de área e similaridade foi 8/8. A exatidão do

mapeamento foi realizada para a imagem de 1997,

devido à existência de dados de campo. Em relação

à imagem de 1987, o resultado foi verificado junto

aos técnicos da EMATER-PAD-DF. Com a

verificação de campo, observou-se que o resultado

da classificação foi satisfatório. Isto pode ter

ocorrido pela divisão da área em diversas classes e

pelo número de regiões amostradas.

A partir da segunda metade da década de

70, a cobertura vegetal natural que predominava nos

anos anteriores foi substituída pela agricultura e

pela pastagem cultivada. Essa modificação no uso

da terra deu-se após a implantação do Programa de

Assentamento Dirigido do Distrito Federal (PAD-

DF). A interpretação das imagens analisadas neste

trabalho identificaram diferentes classes de uso da

terra e 5 fases de degradação de pastagens. A

Tabela 2 apresenta as classes de uso da terra e

cobertura vegetal natural para os anos de 1987 e

1997, em ha.

Classe deUso da terra

1987 1997

Mata 826,03 1025,94Cerradão 1,17 3,92Cerrado 193,07 85,86Campo 152,71 -Agric. anual 4771,10 4389,24Agric. irrigada 68,08 575,81Past. deg. 1 3168,70 1108,87Past. deg. 2 - 225,94Past. deg. 3 - 420,70Past. deg. 4 - 1256,20Past. deg. 5 - 232,26Solo exposto 310,28 291,45Queimada 98,20 -Desmatada 39,54 -Barragem 2,63 9,59Total 9631,51 9625,78Tabela 2 – Classes de Uso da terra e cobertura

vegetal natural, para os anos de 1987 e 1997.

Em 1987, a agricultura anual ocupava praticamente

a metade da microbacia (49,5%), seguido pelas

pastagens cultivadas (29,3%). A agricultura irrigada

ainda não era significativa, havia apenas um pivô-

central próximo ao córrego Pindaibal e uma área

irrigada por aspersão, localizada nas margens do

córrego Açude, totalizando 0,7%.

A mudança mais significativa observada em 1997

foi o aumento das áreas irrigadas por pivô-central

(5,9%). As áreas com agricultura anual reduziram

Page 21: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

para 45,6%, sendo que a soma dessas totalizou

51,5%.

Das áreas de cerrado restavam apenas 0,9% e em

estado de degradação. As áreas com solo exposto

tiveram uma pequena diminuição para 3,0%. As

áreas com reservatórios d'água aumentaram para

0,1%, localizando-se nos córregos Poço Claro,

Barreiro do Meio e Derradeiro Poço. As regiões

com Mata de Galeria e de Cerradão aumentaram

para 10,6% e 0,04%, respectivamente. Este

aumento pode ser explicado pela data da imagem

(maio), onde a vegetação próxima a estas regiões,

ainda encontravam-se verdes, sendo então

englobadas por essas classes. Observou-se também,

que as áreas de Mata Seca, neste período

encontravam-se verdes, sendo então classificadas

como Mata de Galeria. As áreas de campo não

foram observadas, provavelmente foram

classificadas como Mata.

As áreas anteriormente classificadas como

desmatadas foram abandonadas transformando-se

em vegetação secundária.

Em 1987, as pastagens cultivadas

encontravam-se no nível 1 (deterioração leve) e

ocupavam 32,9% do total da área. Os outros níveis

de degradação não foram observados. Em 1997 as

áreas com pastagem cultivada em bom estado de

manejo, nível de degradação1 (deterioração leve)

reduziram para 10,9%, demonstrando que do total

plantado, a maior parte, encontrava-se degradada.

Verificou-se 2,3% no nível 2 (deterioração

moderada), e 2,4% na área degradada 3 (forte). O

nível de degradação 4 (muito forte) foi o que

totalizou a maior área com 13,0 % e o nível 5

(muito forte), com 4,4%.

O efeito da falta de cobertura do solo pode

ser um dos fatores mais graves no tocante ao

impacto ambiental. As perdas de solos e nutrientes,

associadas a menor capacidade de produção de

biomassa condiciona o assoreamento dos

mananciais e cursos d’água e certamente

descredenciam as pastagens degradadas a

desempenhar seu papel captador de carbono.

Segundo Dedecek (1986) em ambiente de

Cerrado os solos descobertos podem perder até 59

toneladas de solo/ha/ano, enquanto as pastagens,

quando bem formadas, representam o sistema de

maior proteção aos riscos de erosão.

As alternativas tecnológicas desenvolvidas

para o restabelecimento da capacidade produtiva

das pastagens passam, em sua grande maioria, pela

correção e fertilização do solo, associado à sua

movimentação com implementos agrícolas

(Oliveira et al., 1996). Este revolvimento do solo é

necessário para a descompactação superficial ou

para a implantação de um cultivo anual associado

com a pastagem. É importante ressaltar que muitas

vezes as áreas destinadas a implantação de

pastagens são restritas ou inaptas para essa

utilização, o que as tornam inadequadas ao

desenvolvimento de agricultura convencional.

A partir dos resultados alcançados, alguns

comentários podem ser feitos:

O processo de ocupação e uso da terra foi

realizado sem a observação dos critérios básicos,

como a aptidão agrícola das terras. A classe

pastagem foi dividida em 5 classes, realçando as

fases de degradação.

Estes aspectos provocam direta ou

indiretamente impactos na região. O uso

Page 22: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

inadequado dos solos, com outro tipo de atividades

pode rapidamente provocar seu esgotamento, de

caráter físico, (acentuando os processos de erosão)

ou de caráter químico (reduzindo a porcentagem de

matéria orgânica, reduzindo o estoque de

nutrientes).

As pastagens, quando não degradadas

promovem com alta eficiência:

• ciclagem de nutrientes;

• captação de carbono da atmosfera;

• redução dos processos de erosão.

Neste trabalho, com a identificação de cinco

classes de degradação, torna-se possível inserir em

cada polígono, quais das atividades listadas acima

(ou se todas) estão sendo afetadas. No caso da

microbacia do córrego Lamarão, não foram

observados processos de erosão acentuados.

Conclusão

De acordo com os resultados obtidos neste

trabalho, a utilização das técnicas de segmentação

de imagens e classificação supervisionada por

regiões, implementadas no SPRING, mostraram-se

eficiente na separabilidade das regiões.

Utilizando as imagens TM Landsat e a

classificação supervisionada por regiões, foi

possível identificar as pastagens com 5 níveis de

degradação. É importante ressaltar que muitas vezes

as áreas destinadas a implantação de pastagens são

restritas ou inaptas para essa utilização, o que as

tornam inadequadas ao desenvolvimento de

agricultura convencional.

Trata-se portanto de um primeiro esforço no

sentido de, além de identificar a classe de uso,

caracterizar e quantificar por nível de degradação.

A partir desta identificação, torna-se fundamental

estabelecer os procedimentos de radiometria destes

alvos para posterior extrapolação espacial em outras

áreas de cerrado.

Com os resultados alcançados, abrem-se

novas perspectivas para trabalhos futuros,

utilizando regiões e situações diferentes,

contribuindo para o desenvolvimento do

processamento digital de imagem.

Referências bibliográficas

BARCELLOS, A. O.; VIANA FILHO, A.;

BALBINO, L. C.; OLIVEIRA, I. P.;

YOKOYAMA, L. P. Produtividade animal em

pastagens renovadas em solo arenoso de

cerrado. In: REUNIÃO ANUAL DA

SOCIEDADE BRASILEIRA DE

ZOOTECNIA, 34.,1997. Juiz de Fora, Anais.

Juiz de Fora: SBZ, 1997, v.4, p.207-209.

BATISTA, G. T., MEDEIROS, J. S.; MELLO, E.

M. K.; MOREIRA, J. C.; BINS, L. S. A new

approach for deforestation assessment. In:

INTERNACIONAL SYMPOSIUM ON

RESOURCE AND ENVIRONMENTAL

MONITORING, 1994, Rio de Janeiro,1994.

Proceedings. Rio de Janeiro: ISPRS, 1994. v.

30, p.170-174.

CROSS, A. M.; MASON, D. C.; DURY, S. J.

Segmentation of remotely-sensed images by a

split-and-merge process. International Journal

of Remote Sensing,v. 9, n.8, p. 1329-1345,

1988.

DEDECEK, R. A.; RESCK, D. V. S.; FREITAS

JÚNIOR,E. Perdas de solo, água e nutrientes

Page 23: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

por erosão em latossolo vermelho escuro dos

cerrados e de manejo da palhada do milho.

Revista Brasileira de Ciência do Solo,

Campinas, v.10, p. 265-272, 1986.

MACEDO, M. C. M. Pastagens no ecossistema

cerrados: pesquisas para o desenvolvimento

sustentável. In: REUNIÃO ANUAL DA

SOCIEDADE BRASILEIRA DE

ZOOTECNIA, 32., 1995. Brasília, Anais.

Brasília: SBZ, 1995. p. 28-62.

MACHADO, R. J.; BARBOSA, V. C.;

LIPORACE, F.S.; SANTOS, J. R.;

VENTURIERI, A. Deforestation monitoring

of the Amazon region using neural networks -

a comparison between different photo-

interpreters and networks. In: Resource and

environmental monotoring: Rio de Janeiro,

ISPRS, 1994, v. 30, Part 7b, p.49-55.

Proceedings of an International Symposium

organized by VII of the International Society

of Photogrammetric and Remote Sensing, Rio

de Janeiro, Sept.. 26-30, 1994.

NASCIMENTO, P. S. R. Avaliação de técnicas de

segmentação e classificação por regiões em

imagens Landsat-TM visando o mapeamento

de unidades de paisagem na Amazônia. São

José dos Campos: INPE, 1997. 102p. Tese

mestrado.

OLIVEIRA, I. P. ; KLUTHCHCOUSKI,

J.;YOKOYAMA, L. P.; DUTRA, L. G.

Sistema Barreirão: recuperação/ renovação

de pastagens degradadas em consórcio com

culturas anuais. Goiânia: EMBRAPA-

CNPAF, 1996. 90p (EMBRAPA-CNPAF,

Documento, 64).

SAIZ, C. C.; VALÉRIO FILHO, M. Técnicas de

processamento de imagens digitais aplicadas

à caracterização de classes de uso do solo e

cobertura vegetal em região de clima

temperado úmido. In: SIMPÓSIO

LATINOAMERICANO DE PERCEPCIÓN

REMOTA.7.;1995. Puerto Vallarta.

SELPER-México. Latinoamérica Evaluada

desde el Espacio. Puerto Vallarta. Memórias.

Noviembre, 1995. p.593-600.

SPAIN, J. M.; GUALDRÓN, R. Degradación y

rehabilitación de pasturas. In: VI Reunión del

Comité Asesor de la RIEPT. Memórias. Red

Internacional de Evaluación de Pastos

Tropicales. Veracruz, México 1988. CIAT. p.

269-283.

WATRIN, O.S. Estudo da dinâmica na paisagem da

Amazônia oriental através de técnicas de

geoprocessamento. São José dos Campos:

INPE, 1994. 151p. Tese mestrado.

Page 24: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

On the Use of Indicator Simulation for Numerical Predictions with Uncertainty Assessment

CARLOS ALBERTO FELGUEIRAS1

SUZANA DRUCK FUKS2

ANTÔNIO MIGUEL VIEIRA MONTEIRO1

EDUARDO CELSO GERBI CAMARGO 1

1INPE/DPI—Instituto Nacional de Pesquisas Espaciais, Caixa Postal 515, 12201 São José dos Campos, SP, Brasil{carlos,miguel,eduardo}@dpi.inpe.br

2EMBRAPA/CPAC – Empresa Brasileira de Agropecuária , Rodovia Brasília Fortaleza Br 020 Km 18, PlanaltinaDistrito Federal, Brasil

[email protected]

Abstract. Raster representations of thematic and numerical spatial attributes are used very commonly in a GISenvironment for computational simulation and analysis of spatial processes. This paper addresses the problemof predictions with uncertainty assessment for GIS raster representations created from a set of sample points ofspatial attributes. The realizations of a stochastic simulation inference process, over numerical attributesamples, are used in order to infer the attribute values and related uncertainties at non-sampled spatial locations.A case study, with elevation sample data, is presented to illustrate the concepts used in this work.

1 Introduction

GIS environment allows one to simulate and analyzedifferent scenarios that can be used to support decisionsmade about a specific real spatial process. The main idea isto integrate spatial data attribute representations in order tostudy the spatial process in a computational environment.The final scenarios depend on the data representations andalso on the mathematical model used to integrate them. Theattribute representations are derived from a set of attributesamples, commonly sample points, obtained in a spatialregion of interest. Nonlinear stochastic procedures, basedon the indicator kriging approach, can be used to createattribute representations along with uncertainty informationrelated to a set of estimated attribute values. Theuncertainty of each representation can be propagated to theresulting scenarios of a spatial process modeling. Theresulting uncertainties will qualify the scenarios, or theobjects presented in the scenarios, yielding a quantitativeinformation of the risk assumed when a determinedscenario is chosen. In this context, this work presents amethodology to create attribute representations, from a setof sample points, using a nonlinear stochastic approachcalled indicator simulation. Furthermore, this work showshow to obtain uncertainty values related to the attributevalue inferences created by this methodology. Differentuncertainty metrics, based on confidence intervals, will beaddressed. A case study for an elevation sample set will bepresented to show how the methodology can be applied to

real data and how to use the uncertainty metrics in order toqualify inferences of numerical attribute representations.

2 The geostatistical paradigm for attribute inferenceswith uncertainty assessment

From a geostatistical point of view, the distribution of aspatial attribute in a region Α ⊂ ℜ 2 of the earth surface isrepresented as a random function Z(u). For each position u∈ Α the attribute is considered as a random variable (RV)that can assume different values depending on the model ofthe spatial distribution of z(u), i. e., depending on itsprobability distribution function (pdf). The conditionalcumulative distribution function (ccdf) of a continuous RVZ(u), conditioned to (n) sample points z(uα), α =1,2,...,n,can be denoted as:

( )( ) ( ) ( ){ }nZProbnF |z|z; ≤= uu

A random function (RF) is a set of RVs defined over somefield of interest. A RF Z(u) is characterized by a set of allits K-variate ccdfs and its multivariate ccdf is defined as:

From the ccdf one can derive different optimal estimatesfor any unsampled value z(u) in addition to the ccdf mean,which is the least-squares error estimate (Deutsch, 1998).Also, the univariate ccdf of a RV is used to model

( ) ( ) ( ){ }KKZZProbF z,...,zz,...,z;,..., 11K1K1 ≤≤= uuuu

Page 25: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

uncertainty about the value z(u) while the multivariate ccdfis used to model joint uncertainty about K valuesz(u1),...,z(uk). Therefore, it is possible to derive variousprobability intervals that can be used as uncertainty metrics.These derivation processes will be addressed in the nextsections.

3 The ccdf determination

The ccdf of a numerical RV, or of a numerical RF, can beobtained parametrically or non-parametrically. In theparametrical approach, the ccdf is determined by a limitedset of statistical parameters. For example, the Gaussian ccdfis fully determined by two parameters, the mean and thevariance of the distribution. Unfortunately it is a hard workto find out whether the distribution of a continuous attributecan be modeled by parametric ccdf or not. Non-parametrical distributions are more common for spatialattributes and can be estimated using the indicator krigingapproach that will be explained in the next section.

4 The ccdf approximation using the indicator krigingapproach

Instead of the variable Z(u), consider its binary indicatortransformation I(u;zk) defined as:

The expectation E{ I(u;zk)|(n) } yields an estimation F* forthe ccdf of Z(u) at the cutoff value zk and conditioned tothe n sample data, i. e.:

Using a linear kriging approach, as simple or ordinarykriging, to evaluate the expectation E defined in the aboveequation, the indicator kriging of a continuous variableaims to provide a least-squares estimate of the ccdf at cutoffzk. A set of ccdf estimates in various cutoffs can lead to anapproximation of the full ccdf of Z(u). Some correctionsfor the follow order relation deviations:

and

must be performed to guarantee that the ccdf estimationsare between 0 and 1 and increase monotonically. Figure 1illustrates the fitting process of the ccdf estimation using 5cutoff values.

Figure 1 The ccdf estimation using indicatorkriging approach with order relation corrections

5 The indicator simulation approach

Stochastic simulation, hereafter called simulation forsimplicity, is the process of drawing alternative, equallyprobable, joint realizations of the component RVs from anRF model (Deutsch, 1998). Each realization of Z(u) isdenoted by z(l)(u), u ∈ Α. A conditional simulation is thesimulation conditioned to a set of n sample data. In thiscase the resulting realizations honor the sample data valuesat their location, i. e., z(l)(uα) = z(uα), ∀ l.

Deutsch, 1998, presents a sequential indicator simulationapproach that uses local ccdf approximation, determined bythe indicator kriging approach, in order to obtainrealizations of RVs Z(u), u ∈ Α. For creating a rasterrepresentation, one univariate ccdf is modeled at each nodeof the all grid nodes visited along a random sequence. Toensure reproduction of the z-covariance model, eachunivariate ccdf is made conditional not only to the sampledata but also to all values simulated at previously visitedlocations (Goovaerts, 1997).

The realizations are drawn using probability values,obtained from an uniform random model, that are mappedto z values taking into account the estimate univariate ccdffor each node location (Felgueiras, 1999). Figure 2illustrates this process.

( ){ }{ } { }{ } ))(;()(1);(1

)(0);(0)(1);(1

)();

n|zFn|zIProb

n|zIProbn|zIProb

n|zIE

k*

k

kk

k

uu

uu

u

==⋅

==⋅+=⋅=

>≤

=k

kk zZ,

zZ,zI

)(for0

)(for1);(

u

uu

( )( ) K,...,kzn|zF kk* 1,1;0 =∀≤≤ u

( )( ) ( )( ) kjkj zzn|zFn|zF ** ≤≤ se;; uu

ccdf

zmin z Valuezmax

Estimated Fitted

Page 26: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figure 2 Process of obtaining a realization froma estimated univariate ccdf

6 Evaluation of statistical parameters from therealizations

The set of realizations at a node location u can be used todetermine a ccdf, along with its parameters, of a RV Z(u).

The most popular predictive ccdf parameter is the meanvalue µµµµ. From a set of realizations the mean value of a ccdfis evaluated as the average of all the realizations. Thevariance and the standard deviation, σσσσ , is easily evaluatedusing the realization values and the mean value.

The median value, q.5, can be determined splitting the set ofrealization into 2 subsets, each with equal number ofelements. Also, the set of realizations can be split in moreequal subsets to derive different quantile values. When themedian and the mean values are closer the distribution canbe considered symmetric The median is a more robustestimator for non-symmetrical distributions (Isaaks, 1989).

7 Uncertainty assessment for local estimates

As already emphasized, in section 2, the univariate ccdf ofa RV is used to model uncertainty about the value z(u)while the multivariate ccdf is used to model jointuncertainty about K values z(u1),...,z(uk). Therefore, given accdf model it is possible to derive various probabilityintervals that can be used as uncertainty metrics.

For numerical attributes usually the uncertainties areexpressed as confidence intervals. When the ccdf of a RVZ(u) presents a high degree of symmetry and the normalityof the distribution can be assumed, the estimated valuez*(u), typically the mean value µµµµ, and the standarddeviation σσσσ are combined to derive a Gaussian-typeconfidence intervals, centered on z*(u), such as:

where σσσσ2(u)=E{(Z(u)–E{Z(u)})2}.

For non-symmetrical distributions one can deriveprobability intervals based on quantiles of the ccdf. Forexample, the 95% interval [q0.025;q0.975] is taken as:

with q0.025 and q0.975 being the 0.025 and 0.975 quantiles ofthe ccdf, i. e., F*(u; q0.025|(n)) = 0.025 and F*(u; q0.975|(n))= 0.975

8 A case study for elevation data

In order to illustrate the concepts presented above, this casestudy uses a set of elevation data sampled in the region of aexperimental farm called Canchim. The study region islocated in the city of São Carlos, SP, Brazil, and cover anarea of 2660 ha between the north-south coordinates from s21o55’00’’ to s 21o59’00’’ and the east-west coordinatesfrom w 47o48’00’’ to w 41o52’00’’.

The data set consists of 662 elevation samples distributedin the Canchim region as illustrated in the Figure 3. Somestatistic values of this sample set is shown in the Table 1.

Statistic Value

Number of Samples 662

Mean Value 800.596

Variance 4481.662

Standard Deviation 66.945

Coefficient of Variation 0.084

Coefficient of Skewness -0.296

Coefficient of kurtosis 1.562

Minimum Value 687.000

Lower Quartile 732.500

Median 827.000

Upper Quartile 859.500

Maximum Value 911.000

Table 1 Univariate statistics of the elevationsample set of the Canchim region

ccdf

z values

p (l)

zi(l)

[[[[ ]]]] (((( )))){{{{ }}}} 0.95;)( 0.9750.025 ====∈∈∈∈ nZProb |qqu

(((( ))))[[[[ ]]]]{{{{ }}}}

(((( ))))[[[[ ]]]]{{{{ }}}} 950)(2)(

or

680)()(

.óì

.óì

Z

Z

≅≅≅≅±±±±∈∈∈∈

≅≅≅≅±±±±∈∈∈∈

uuu

uuu

ZProb

ZProb

Page 27: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figure 3 Distribution of the elevation data setobserved in the Canchim region.

The histogram graph, presented in the Figure 4, shows thedistribution of the elevation sample set compared with anormal curve distribution. It can be seen that the sampledata distribution approximates a bimodal behavior anddiffers considerably from the Gaussian (normal) orsymmetrical distribution.

Figure 4 Histogram of the elevation sample setemphasizing the non-normal and non-symmetricalbehavior of the distribution.

The original sample set was split in 10 equal subsets(deciles) using 9 cutoff elevation values. Each cutoff valuewas considered in order to create indicator subsets usingthe indicator transformation explained in section 4. Thevariability of the indicator subsets are analyzed allowingthe definition of an experimental and a theoreticalvariogram model for each subset. These tasks wereperformed using the geostatistical module of the SPRINGGIS version 3.3 (SPRING (DPI/INPE), 1999).

The variogram models, along with the original sample set,were used to set the parameter values of the gslib (Deutsch,1998) sequential simulation program named sisim. Thisprogram was modified and used for estimating 400realizations of 200 rows by 200 columns elevation grids(rectangular regular grids). Considering the 400 elevationrealizations at any grid location u it was possible to renderthe mean and the median value maps using themethodologies defined in section 6. These maps are shownin the Figures 5 and 6. A qualitative (visual) comparativeanalysis of the two maps shows that they differs. This isexplained by the non-symmetrical distribution of theelevation distribution model. Because of these, the medianmap can be considered more representative as centralmeasure for this attribute in the region considered.

Figure 5 Elevation grid map of local meanvalues estimated from the 400 grid realizations

686.

911.

+ SAMPLES

NormalDistribution

Sample SetDistribution

687.

911.

Page 28: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figure 6 Elevation grid map of local medianvalues estimated from the 400 grid realizations

The Figures 7, 8 and 9 show uncertainty maps renderedalso using the 400 elevation realizations and the confidenceinterval methodologies explained in section 7.

Figure 7 Map of local uncertainties based onGaussian-type confidence intervals (Prob{Z(u)∈ (µµµµ ± σσσσ)}≅ 0.68)

Figure 8 Map of local uncertainties based in theinterquartile confidence intervals (Prob{Z(u) ∈[q0.25;q0.75]} = 0.5)

Figure 9 Map of local uncertainties based oninterdecile confidence intervals (Prob{Z(u) ∈[q0.10;q0.90]} = 0.8)

0.0

97.2

687.

911.

0.0

101.5

0.0

105.7

Page 29: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

It can be seen that all the above uncertainty map values arerelated to the attribute behavior. These uncertainty mapspresent maximum uncertainty values on regions (whiterregions) where the attribute values behave more erratically.Minimum uncertainty values (blacker regions) appearwhere the attribute values vary smoothly.

The map of Figure 7 shows uncertainty values based onGaussian-type confidence intervals. This map wasgenerated using one standard deviation centered in themean value (Prob{Z(u) ∈ (µµµµ ± σσσσ)}≅ 0.68). It is common touse this map as the uncertainty map related to the mapestimated by mean values (Figure 5). A care has to be takenon using this type of uncertainty representation. It must beused only when the attribute variation can be modeled asRV with symetric-distributions (normal one, for example).

The maps of Figures 8 and 9 represent uncertainties asconfidence intervals based on quantiles. The quantilevalues are estimated directly from the 400 realizations asexplained in the section 7.

The map of Figure 8 was obtained using interquartileconfidence intervals (Prob{Z(u) ∈ [q0.25;q0.75]} = 0.5) whilethe map of Figure 9 was generated with interdecileconfidence intervals (Prob{Z(u) ∈ [q0.10;q0.90]} = 0.8 ). Asexpected the map of Figure 9 contains larger uncertaintyvalues than the one of Figure 8. The decision about whichone to use depends on the accuracy demanded by anapplication. Finally the interquantile uncertainty maps aremore appropriated to be used when the RV distributionscan not be proven to have symmetrical behavior.

9 Conclusions

The concepts and results presented in this work show thatthe indicator simulation methodology is an interestingoption to be considered when estimates with uncertaintyassessments for numerical spatial attributes are required.The use of indicator simulation approach presents thefollowing advantages:

• the indicator approach is non-parametric, so, it can beused independently of the attribute distribution model;

• the indicator approach allows assessment ofuncertainties related to the attribute variability using anapproximation of attribute distribution model;

• the sequential indicator algorithm determine theunivariate ccdfs taking into account the sample dataset and all values simulated at previously locations.This ensure reproduction of the z-covariance model,representing better the attribute variability;

• the various equally probable outcome realizations ofthe indicator simulation can be used as input forcomplex spatial modeling (with multilayer analysis)performed by Monte Carlo simulation method. Also,

the outcomes of the spatial analysis results can be usedto define their ccdf´s and, therefore, modeling theiruncertainties.

Finally, it can be emphasized that the indicator simulationmethodology can be applied, also, to thematic spatialattributes with minor modifications. This has been thesubject of researchs that will be reported in the near future.

References

[1] P. A. Burrough and R. A. McDonnell, Principles ofGeographical Information Systems, Oxford UniversityPress, 1998

[2] E. C. G. Camargo, Desenvolvimento, implementação eteste de procedimentos geoestatísticos (krigeagem) noSistema de Processamento de InformaçõesGeoreferenciadas (SPRING). Dissertação (Mestrado emSensoriamento Remoto) – Instituto Nacional de PesquisasEspaciais, São José dos Campos, 1997.

[3] D. J. Cowen, “GIS versus CAD versus DBMS: what arethe differences?”, Photogrammetric Engineering andRemote Sensing, 54, (1988), 1551-1554.

[4] J. L. De Oliveira, F. Pires and C. B. Medeiros, “Anenvironment for modeling and design of geographicapplications”, GeoInformatica, 1, (1997), 29-58.

[5] C. V. Deutsch and A. G. Journel, GSLIB GeostatisticalSoftware Library and User’s Guide. Oxford UniversityPress, 1998.

[6] C. A. Felgueiras, Modelagem Ambiental comTratamento de Incertezas em Sistemas de InformaçãoGeográfica: O Paradigma Geoestatístico por Indicação.Tese (Doutorado em Computação Aplicada) – InstitutoNacional de Pesquisas Espaciais, São José dos Campos,Publicado em http://www.dpi.inpe.br/teses/carlos/, 1999.

[7] C. A. Felgueiras, A. M. V. Monteiro, S. D. Fuks and E.C. G. Camargo, “Inferências e Estimativas de IncertezasUtilizando Técnicas de Krigeagem Não Linear” [CD-ROM]. In: V Congresso e Feira para Usuários deGeoprocessamento da América Latina, 7, Salvador, 1999.Anais. Bahia, gisbrasil’99. Seção de Palestras Técnico-Científicas.

[8] G. B. M. Heuvelink, Error Propagation inEnvironmental Modeling with GIS, Bristol, Taylor andFrancis Inc, 1998.

[9] E. H. Isaaks and R. M. Srivastava, An Introduction toApplied Geostatistics, Oxford University Press, 1989.

[10] SPRING (DPI/INPE) Sistema de Processamento deInformações Georeferenciadas – Divisão de Processamentode Imagens (DPI) do Instituto Nacional de PesquisasEspaciais (INPE).. http://www.dpi.inpe.br/spring/, 1999.

Page 30: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

1 Hélio Perez é consultor na área de administração de dados e de banco de dados.Atualmente presta consultoria no portal financeiro InvestShop.comhttp://www.investshop.com.br

2 Professor do Departamento de Informática Aplicada da UNIRIO (Universidade do Rio deJaneiro) e Pesquisador Colaborador do Departamento de Engenharia de Sistemas do IME.Parcialmente patrocinado pelos projetos CNPq processo n.350652/94-5 e PROTEM-CC/INRIA processo n. 68.0139/98.2

([WUDomR�GH�'DGRV�HP�6LVWHPDV�GH�,QIRUPDo}HV�$PELHQWDLV�$UTXLWHWXUD�H�(VTXHPD�GH�0HWDGDGRV

Hélio Alvaro de Mello Perez1

Ana Maria de Carvalho Moura1

Astério Kiyoshi Tanaka2

1Instituto Militar de EngenhariaDepto de Engenharia de Sistemas

e-mail : [email protected]@ime.eb.br

2Universidade do Rio de JaneiroDepto de Informática Aplicadae-mail : [email protected]

$EVWUDFW� Environmental information is very important for the creation of environmental protection strategies,representing one of the greatest worries of most public organizations and societies in the world. Characterizedby its heterogeneous and distributed nature, this kind of information needs to be integrated and changed intouseful information, originating the so-called Environmental Information Systems (EIS). One of the greatestdifficulties in constructing an EIS concerns, besides the huge amount of available data, the lack of a storagestandard format, turning out its use and integration to be very difficult. Besides, the most specific and well-known metadata standards used for cataloguing environmental data still present a low power level forrepresenting the structural part of data repositories. This paper presents a three-layer architecture to support theaccess and extraction processes of environmental data captured from heterogeneous and distributedrepositories, and a metamodel based on metadata to enable the structure mapping of these data into anintermediate level, allowing users to build their programs to access the information directly, without changingthe original storage location nor the data structure or data formats.

����,QWURGXomRInformações ambientais são imprescindíveis para a

criação de estratégias de proteção ambiental. O problemaé que, apesar da grande quantidade de dados disponíveis,não existe um formato padrão (planilhas, arquivos, bancode dados etc.) de armazenamento, dificultando suaintegração e utilização pelas pessoas envolvidas noprocesso de tomada de decisão. Além disso, dadosambientais possuem características que dificultam ogerenciamento dos dados, tais como: grande volume dedados a ser processado; heterogeneidade de tipos de dadose de ambientes (software e hardware); estrutura complexa,com características espaço-temporal, incertos e altamentedistribuídos (cada informação ou conjunto de dados podeestar localizada em locais diferentes, dificultando aindamais sua recuperação e integração). Somam-se a isto aindaos principais problemas enfrentados pelos usuários nabusca de informações ambientais [8]: os dados nãoexistem ou são insuficientes; os dados não sãoreferenciados pelos seus fornecedores ou sãoreferenciados sob um determinado critério de classificaçãoespecífico de um domínio; os dados são difíceis de serem

acessados (precisam ser integrados e transformados); osconjuntos de dados acessados são difíceis de seremutilizados pois são inconsistentes ou incompatíveis; aqualidade dos dados recuperados é difícil de ser medida jáque é difícil se comparar dados produzidos por diferentesmodelos científicos sem sua documentação.

Apesar do grande número de soluções sendoutilizadas e em desenvolvimento, ainda não existe umaestrutura conceitual de integração destas soluções. Asabordagens existentes são superficiais em relação aostipos de repositórios de dados utilizados por um Sistemade Informação Ambiental (SIA), sendo necessáriastransformações entre formatos, aumentando acomplexidade das soluções.

Dentre as abordagens existentes, a mais viável são ospadrões de metadados. Existem padrões específicos para acatalogação de dados ambientais ou geográficos, aexemplo do FGDC [2] e UDK [9]. Porém, durante odesenvolvimento desse trabalho foi verificado que, apesardesses padrões serem muito utilizados para a definição deinformações ambientais, ainda possuem um baixo poderde representação da parte estrutural dos repositórios dedados. Como exemplo pode-se citar a quinta seção dopadrão de metadados FGDC (seção 3.2 de [6]), que só

Page 31: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

contempla tabelas relacionais. Esta seção é responsávelpela descrição do conteúdo da informação do conjunto dedados a nível de entidades, atributos e domínios, o que éainda pouco abrangente em relação aos diversos tipos derepositórios existentes nos SIAs.

Além disso, a complexidade de um SIA é tão grandeque a tendência é não permitir a criação de novosmecanismos para a conversão e tratamento de cadarepositório de dados para um novo formato, o que gerariaalguns problemas, tais como: gasto de espaço físico dearmazenamento desnecessário e até mesmo inviável,devido ao volume de informações; direito de acesso e usoda informação. O processo de geração de informaçõesambientais é caro, levando as instituições a restringiremseu acesso e/ou uso através de citações, pagamentos ououtras formas de segurança.

Todos esses aspectos, somados a falta do poder derepresentação da estrutura dos dados nos padrões dmetadados para SIAs, geraram a necessidade da criação duma estrutura adequada para o armazenamento dainformação estrutural dos dados ambientais para cadarepositório de dados, de forma clara, mantendo-osarmazenados em seus locais de origem. Para atingir taobjetivo foi criado um meta-modelo capaz de mapear aestrutura dos dados ambientais em um nível intermediário,permitindo aos usuários desenvolverem programas queacessem a informação de forma direta, sem a necessidadda troca do local de armazenamento ou de mudanças nsua estrutura de armazenamento e padrão dos dados. Esmeta-modelo faz parte de um dos componentes daarquitetura proposta para a extração de dados em SIAstambém apresentada neste artigo. De forma a facilitar acriação e manutenção de instâncias da meta-modelagemdesenvolvida foi criada uma ferramenta para ambienteInternet com o objetivo de facilitar o acesso a usuários emqualquer parte do mundo. Este requisito é de essenciaimportância num SIA, dada a sua característica natural dedistribuição das informações [6].

O restante desse artigo está organizado da seguintforma: a seção 2 apresenta uma visão geral sobre SIAs suas principais etapas de desenvolvimento; a seção 3define os componentes básicos de uma arquitetura para extração de dados em SIAs, onde o papel dos metadadoocupa um lugar de destaque; a seção 4 apresenta o metmodelo de metadados criado, tecendo alguns comentáriosobre a ferramenta de apoio desenvolvida para a gerêncidesses metadados; finalmente, a seção 5 expõe aconclusões gerais do trabalho, com suas contribuições esugestões para trabalhos futuros.

����&DUDFWHUtVWLFDV�GRV�6,$VSIA é um sistema de gerência de informações

ambientais, que manipula informações tais como solo,água, ar, clima, espécies existentes no mundo etc. [3]. Afigura 2.1 apresenta três componentes importantes que

participam de um sistema de informação ambiental,visando um melhor entendimento de sua estrutura deprocesso:• 2EMHWRV�$PELHQWDLV��representam quaisquer objetos do

mundo real de interesse, tais como entidades naturais(rios, lagos, oceanos, florestas, animais, etc.) eestruturas criadas pelo ser humano (casas, prédios,pontes, fábricas, etc.);

• 'DGRV�GH�2EMHWRV�$PELHQWDLV��são coleções de dadosque agrupam objetos ambientais. Tal coleção é umaentidade abstrata que pode ser manipulada porcomputadores ou por tomadores de decisão;

• 0HWDGDGRV� $PELHQWDLV�� representam os metadadosambientais utilizados para referenciar um determinadodado de objeto ambiental. Cada dado de objetoambiental possui um ou mais objetos de metadadosque determinam seu conteúdo e formato.

if$

cefb

ev

taphdt

é

Objetos Ambientais Dados de Objetos Ambientais Metadados Ambientais

ee

l

ease

,

l

ee

asa-sas

)LJXUD���� Modelo de Objetos de Três Modos deSistemas de Informação Ambiental

Günther [3] divide, de acordo com o fluxo danformação ambiental, a estrutura de um SIA em quatroases: &DSWXUD� GH� 'DGRV�� $UPD]HQDPHQWR� GH� 'DGRV�QiOLVH�GH�'DGRV e GHUHQFLDPHQWR�GH�0HWDGDGRV�

A fase de &DSWXUD� GH� 'DGRV tem por objetivo aoleta, processamento e agregação dos dados ambientaism sua forma bruta (séries de medida de tempo,

otografias aéreas etc.), armazenado-os em arquivos ou emancos de dados.

O processo da captura de dados se dá através de trêstapas: processamento dos dados brutos, classificação ealidação, e interpretação dos dados.

Na fase de $UPD]HQDPHQWR�GH�'DGRV é necessário seer um bom projeto de banco de dados e estruturas dermazenamento apropriadas, levando a um aumento daerformance do sistema. Devido a complexidade eeterogeneidade dos dados ambientais é aconselhávelispor de bancos de dados que provejam extensões à

ecnologia relacional.Na fase de $QiOLVH�GH�'DGRV a informação disponível

preparada para propósitos de apoio à tomada de decisão.

Captura de Dados e Agregação:Medidas, Observações,

Julgamentos

Coleção de Metadados:Descrições, Catálogos

Page 32: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

É necessário o acesso simultâneo aos dados que estãodispersos geograficamente, armazenados em diferentesKDUGZDUHV� e organizados em uma grande variedade demodelos de dados.

Finalmente, a fase de *HUHQFLDPHQWR�GH�0HWDGDGRV éa fase de maior importância durante o processo de criaçãode um SIA. Metadados são coletados e agregados nas trêsfases descritas anteriormente. São armazenados emestruturas de dados apropriadas, fornecendo o apoionecessário às operações de pesquisa, navegação etransferência de dados durante a fase de Análise de Dados.A criação dos metadados deve ser feita, caso seja possível,em paralelo à coleta dos dados originais, o que nemsempre ocorre.

Geralmente a criação de metadados é manual,dependendo de alguém que conheça como obter einterpretar a informação ali contida. Existem duassoluções viáveis para o problema: a primeira seria acriação de uma arquitetura organizacional que funcionassecomo guia para os fornecedores dos dados durante acaptura dos metadados. A segunda seria a criação de umprocesso de extração automática dos metadados. Aprimeira opção é mais voltada para as empresas privadasou públicas que criam seus processos de extração demetadados de forma padronizada, garantindo suaqualidade. A segunda opção tem conquistado maiorespaço dentre as alternativas, apesar de ainda ser difícil deser alcançada.

Uma das soluções que facilita o processo de geraçãode metadados é a criação de padrões de metadados, quefornecem uma maneira sistemática de coletar osmetadados. Dentre os mais importantes padrões demetadados ambientais estão o padrão americano FGDC eo europeu UDK. Ambos documentam as característicasdos dados ambientais, conteúdo, qualidade e condição, damesma forma que os rótulos auxiliam o consumidor,permitindo aos usuários de tais dados determinarem seeles servem ou não para seus propósitos. Em [6] é feitoum estudo detalhado desses padrões, a partir do qual foipossível concluir que: o padrão FGDC possui um maiorapoio (softwares e documentação) para seudesenvolvimento e utilização pelas entidades públicas ouparticulares; já o padãro UDK peca pela falta dedocumentação existente no idioma inglês, o que muitodificulta sua aceitação. Conforme já mencionado, aprincipal deficiência do padrão FGDC é não permitirrepresentar a estrutura das fontes de dados pela seção 5,visto que essa especificação é feita em texto livre, eportanto não estruturada. A idéia seria estender essa seção,estruturando-a, de forma a abranger diversos tipos defontes de dados.

Metadados representam portanto um módulo deextrema relevância numa arquitetura de extração dados emambientes heterogêneos. A seguir é apresentada uma visão

geral da arquitetura proposta para a extração de dados emSIAs.

��� � $UTXLWHWXUD� GH� ([WUDomR� GH� 'DGRV� HP6,$V

A construção de um SIA representa uma tarefa deextrema complexidade, devido a heterogenidade daestrutura de armazenamento (planilhas, arquivos textos,banco de dados etc.) e da grande quantidade de dadosdisponíveis e distribuídos em diferentes locais. Taissistemas devem permitir que os usuários consultem asinformações de modo eficiente e preciso. Para isso, énecessária a união de diversas técnicas de diferentes áreasde pesquisas, tais como: metadados, ontologias,ferramentas de catalogação, classificação e pesquisa naWeb, agentes etc. A integração dessas técnicas leva àdefinição de uma arquitetura para a extração de dados emSIAs.

A heterogeneidade dos dados ambientais e seuarmazenamento em múltiplos repositórios distribuídosrequer que a construção de um SIA tenha como base umaarquitetura distribuída, permitindo que seus componentessejam integrados de forma incremental. A arquiteturaproposta para a extração de dados em SIAs leva em contaessa importante característica, a partir de componentesbem determinados, permitindo que o sistema ambientalseja desenvolvido em várias camadas independentes.Além disso, pode-se utilizar uma abordagem ERWWRP�XS,onde o sistema é desenvolvido a partir da inclusão desegmentos independentes (fontes de dados), podendo serintegrados posteriormente, de forma distribuída, um apóso outro.

Tal arquitetura deve lidar com a informação emdiversos níveis de heterogeneidade, ou seja, deve trabalharcom os quatro níveis de interoperabilidade existentes [7],onde cada um é responsável por:• 6LVWHPD� diferenças de hardware e de sistemas

operacionais;• 6LQWD[H� diferenças na representação dos dados,

formato e armazenamento;• (VWUXWXUD� diferenças de modelos de dados e

estruturas;• 6HPkQWLFD� diferenças no significado são

dependentes do vocabulário e da terminologiautilizados para expressar a informação e o conteúdona qual está interpretada.A figura 3.1 apresenta os tipos de usuários que

interagem na arquitetura, o grau de interoperabilidade e osníveis de informação [7]. Consumidores são os usuáriosfinais que buscam a informação; fornecedores são osresponsáveis pela geração dos dados (informação); e osagentes, também conhecidos como EURNHUV, representamos intermediários entre os consumidores e osfornecedores, isto é, são os responsáveis pela

Page 33: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

disponibilização da informação gerada de formaorganizada pelos fornecedores, permitindo o seu acesspelos consumidores.

)LJXUD����

Em rseguinte (ontologiaos metade os fornconsumid

A papossível que é coAgente Bde DomíDados.

A figda arquitede formacompone

A segdas cama• A p

consugover

• A se"EURNintegré, aqreposCadatraduresposolicitvisto inform(Dadode doutiliza

• A tercde inf

&RQVXPLGRUHVLD

AgenteBroker

AgenteOntologia

$SOLFDo}HV

8VXiULRV

Tipos de usuários, grau de interoperabilidade eníveis de informação

esumo, a figura 3.1 pode ser interpretada daforma: consumidores utilizam a terminologia) para recuperar a informação; agentes utilizamados para criar processos de extração dos dadoecedores geram os dados, fornecendo-os aoores.rtir dos aspectos apresentados anteriormente éapresentar a arquitetura proposta para um SIAmposta de seis componentes, a saber: Usuárioroker, Agente Ontologia / Ontologia Específicanio, Agente Extrator, Metadado e Fonte de

ura 3.2 apresenta uma abordagem de alto níveltura proposta para SIAs dividida em 3 camadas a permitir uma melhor representação dos

ntes participantes envolvidos no processo.uir, é apresentada uma visão geral de cada umadas:rimeira camada �8VXiULRV� representa osmidores de informação, ou seja, os cientistas,nantes, entidades privadas etc.;gunda camada �$SOLFDo}HV� representa osHUV" ou seja, as entidades responsáveis pelaação da informação e os agentes extratores, istoueles que se comunicam diretamente com cadaitório de dados para recuperarem a informação. repositório possui um ou mais extratores outores (também denominado "ZUDSSHUV")nsáveis pela recuperação da informaçãoada. Essa segunda camada é muito importanteque efetua a ligação entre os consumidores deação (Usuários) e os produtores de dadoss). Nela se encontram as ontologias específicasmínio, equivalentes a um dicionário de termos,das para resolução de conflitos semânticos [7];eira camada �'DGRV� representa os repositóriosormações geradas pelos produtores de dados.

ptteuCpadall

(oiendeodqia

�'

dlarfad0(

6HPkQWLFD

(VWUXWXUD

6LVWHPD

6LQWD[H

$JHQWHV

)RUQHFHGRUHV

'DGRV

0HWDGDGRV

7HUPLQRORJ

o

s;s

,,

,

,

)LJXUD���� Arquitetura proposta para SIAs

A arquitetura descrita é por natureza distribuída,ermitindo que se utilize a Internet como meio de

ransmissão de informações, levando, juntamente com aecnologia de orientação a objetos, a um alto grau descalabilidade e abrangência. Uma das soluções seria oso de uma arquitetura distribuída, como a arquiteturaORBA [5] considerada atualmente como plataformaadrão para integração e distribuição de objetos. Arquitetura CORBA é uma arquitetura de objetosistribuídos, permitindo que aplicações façam solicitaçõesos objetos, de forma transparente, independentemente da

inguagem, sistema operacional ou considerações deocalização [1].

A heterogenidade das estruturas das fontes de dadosarquivos textos, planilhas, bancos de dados relacionais erientados a objeto etc.) foi um ponto marcante para a

dentificação da necessidade de armazenamento de suasstruturas sob forma de metadados, além dos metadadosormalmente encontrados nos padrões de catalogação deados ambientais. O "Agente Extrator" precisa conhecer astrutura da fonte de dados, ou seja como ela estárganizada, de modo a realizar adequadamente o processoe extração dos dados. Esse conjunto de metadados, oual denominamos de metadado estrutural, é um ponto

mportante no escopo desse trabalho, cuja modelagem épresentada na seção a seguir.

�� �0HWD�0RGHOR�SDUD�6XSRUWH�j�([WUDomR�GHDGRV

Os estudos de padrões de metadados para SIAs e aefinição de uma arquitetura de extração de dados em SIA

evou à conclusão de que um padrão de metadadosbrangente deve contemplar também metadados queepresentem a estrutura de armazenamento de todas asontes de dados envolvidas no sistema. Esta seçãopresenta um dos componentes necessários à construçãoe um SIA através de um meta-modelo denominadoeta-0odelo para 6istemas de ,nformações $mbientais

MM-SIA) [6], permitindo que os agentes extratores

SGBDOrientado a

Objeto

AgenteExtrator

AgenteExtrator

Planilha SGBDRelacional

AgenteExtrator

Metadado MetadadoMetadado

Ontologia Específicade Domínio

'DGRV

Page 34: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

recuperem a estrutura das fontes de dados a partir de umrepositório central.

O MM-SIA foi desenvolvido tendo como base asseguintes fontes de dados: Arquivos Textos, com ou semseparador, Planilhas, Páginas Web (XML), Tabelas ouVisões oriundas de SGBDs Relacionais, SGBDsRelacionais-Objeto e Classes oriundas de SGBDsOrientados a Objetos. Estas fontes foram escolhidas porincluirem os tipos de fontes de dados mais comumenteencontrados para o armazenamento de dados ambientais.O modelo é plenamente extensível, não impedindo queoutros tipos de fontes sejam acomodados, de acordo comas necessidades dos usuários.

A idéia dessa modelagem é permitir a criação de umrepositório de informações sobre a estrutura de cada fontede dados participante de um SIA, permitindo que umagente extrator possa utilizar esse repositório pararecuperar a estrutura de cada fonte de dados.

A figura 4.1 apresenta o diagrama de classes da MM-SIA modelado em UML [10], cujas propriedades são auto-explicativas.

O meta-modelo pode ser entendido da seguinteforma: um VLVWHPD ambiental é composto de uma ou maisfontes de dados com caraterísticas estruturais diferentes(planilhas, arquivos texto, tabelas etc.). Cada fonte dedados possui um conjunto de atributos que a define, sendoque cada um desses pode ter ou não restrições. A classecorrespondente à fonte de dados DUTXLYR representaarquivos textos que podem ser com ou sem separador, ouseja, um arquivo texto sem separador significa que cadacoluna do arquivo possui sua posição inicial e finaldeterminada (por exemplo, nome vai da coluna 1 a 10). Jáo arquivo texto com separador possui um caracter queindica a separação entre as colunas (por exemplo, ocaracter * separando as colunas nome e cpf).

A classe de atributos DWULEXWR�DUTXLYR representa olocal onde o atributo está localizado dentro do arquivotexto onde: C = atributo no cabeçalho; R = atributo norodapé e E = atributo no interior do arquivo. Isso é devidoa necesidade de se mapear arquivos com controles em suaprimeira e/ou última linha, diferindo da estrutura do restodo arquivo.

As demais fontes de dados correspondem àsseguintes classes do meta-modelo:

• WDEHOD�H�YLVmR: estas classes permitem considerarrespectivamente objetos e visões de sistemasgerenciadores de bancos de dados;

• FODVVH: permite representar objetos de sistemasde bancos de dados orientados a objetos erelacionais-objeto.

• SODQLOKD: representa planilhas eletrônicas, aexemplo do MS Excel.

• ;0/: permite considerar páginas no formatoXML.

De forma a validar o meta-modelo apresentado, foidesenvolvida uma ferramenta de gerencia de metadadospara o ambiente Web, utilizando-se como estudo de casoaplicações reais desenvolvidas na Embrapa Solos - RJ[11] e no Instituto Agronômico de Campinas - SP [12],onde grande parte dos dados encontram-se em planilhas etabelas relacionais, tais como: solo, chuva, temperaturamínima e insolação.

Essa ferramenta foi construída com base natecnologia do padrão Web através do uso de DSSOHWV Java[4], possuindo uma navegação simples através de seusobjetos como os estados no diagrama de transição deestados. Também permite ao usuário executar asoperações básicas de gerenciamento e manipulação decada objeto do MM-SIA.

Foram criados os metadados das informações desolo, chuva, temperatura mínima e insolação no padrãoFGDC, além do mapeamento da estrutura dessas fontes dedados para o meta-modelo MM-SIA. Maiores detalhespodem ser encontrados em [6].

Page 35: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

)LJXUD���� Meta-Modelo para Sistemas de Informações Ambientais

C = CabeçalhoR = RodapéE = Estrutura

Atributos

nome_lógiconome_f ísicodescriçãotipotamanhof lag_restriçãof ormula_calculoapelido

Restrições

nome_lógiconome_f ísicodescriçãorestrição

1

0..*

1

0..*SRVVXL

Fonte de Dados

nome_lógiconome_f ísicodescriçãoapelidonome_endereço_lógiconome_endereço_f ísicoporta

Sistema

nome_lógiconome_f ísicodescriçãoapelido

0..*1 0..*1 SRVVXL

Arquiv o

tamanho_linhanome_arquiv odiretórionumero_de_linhas

Planilha

nome_arquiv odiretórionumero_de_linhas

Atributo-Planilha

linha_iniciallinha_f inalcoluna_inicialcoluna_f inal

1

0..*

1

0..*

p�FRPSRVWR�GH

Atributo-Arquiv o

tipo_atributo(C,R,E)

{ Disjunção, Incompleto }

Tabela

nome_BDresponsáv el_BD

Atributo-Tabela

1

0..*

1

0..*

p�FRPSRVWR�GH

Visão

nome_BDresponsáv el_BD

Atributo-Visão

1

0..*

1

0..*

p�FRPSRVWR�GH

Classe

nome_BDresponsáv el_BD

Atributo-Classe

1

0..*

1

0..*

p�FRPSRVWR�GH

XML

URL_DocumentoDTD_Documento

Atributo-XML

1

0..*

1

0..*

p�FRPSRVWR�GH

Arq-Sem-Separador

Atr-Arq-Sem-Separador

posição_inicialposição_f inal

1

0..*

1

0..*

p�FRPSRVWR�GH

Arq-Com-Separador

separador

Atr-Arq-Com-Separador

1

0..*

1

0..*

p�FRPSRVWR�GH

{ Disjunção, Completo }

{ Disjunção, Completo }

{ Disjunção, Incompleto }

Page 36: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

����&RQFOXVmRDentre as fases de desenvolvimento de um SIA a

gerência de metadados é um ponto de grande relevância.Corresponde à fase de classificação e identificação dainformação ambiental, onde são definidos todos osdescritores dos dados, inclusive os que descrevem a suaestrutura. A definição dessa estrutura é imprescindíveldurante a criação de extratores para a recuperação dosdados distribuídos, já que esses precisam conhecer aestrutura de armazenamento dos dados para poderrecuperá-los de forma correta. Esta estrutura não écontemplada, por exemplo, no padrão de metadadosFGDC tão utilizado pelos SIAs. Este artigo apresentouuma arquitetura genérica para a extração de dadosambientais distribuídos e um meta-modelo para adefinição da estrutura dessas fontes de dados, permitindoaos donos dos dados informarem a estrutura de suas fontesde dados. Com base nesse meta-modelo foi construídauma ferramenta para gerência de metadados ambientais,tendo sido aplicada a sistemas reais de meio-ambiente. Ameta-modelagem desenvolvida é extensível, podendo serestendida a outras estruturas de armazenamento diferentesdas padrões.

Como continuação desse trabalho pretende-seincluir na seção 5 (Entidade e Atributos) do padrão FGDCo meta-modelo criado, utilizando-se como fonte asinstâncias já armazenadas na ferramenta desenvolvida.Para isso é necessária a extensão dessa seção de modo acontemplar os novos tipos de fontes de dados.

5HIHUrQFLDV[1] Cattel, R. G. G. The Object Databases Standard:

ODMG 2.0, Morgan Kaufman, 1997.[2] Federal Geographic Data Committee (FGDC).

http://www.fgdc.gov 1999[3] Gunther, O. Environment Informations Systems.

Springer-Verlag Berlin Heidelberg, 1998.[4] JAVA, SUN Microsystems. http://java.sun.com/,

1999.[5] Object Management Group http://www.omg.org,

1999[6] Perez, H. A. M. Modelagem de Metadados para

Suporte a Extração de Dados em Sistemas deInformações Ambientais. Tese de Mestrado, InstitutoMilitar de Engenharia, Rio de Janeiro, fev. 2000.

[7] Sheth, A., Kashyap, V., Lima, T. SemanticInformation brokering: How can a Multi-AgentApproach Help?. Proceedings of the ThirdInternational Workshop on Cooperative InformationAgents, julho 1999.

[8] Simon, E., Tomasic, A. Improving Access toEnvironment Data using Context Information,SIGMOD Record; 1997.

[9] Especificação do Modelo UDK(UmwelDatemKatalog).http://www.mu.niedersachsen.de/udk, 1999.

[10] Object Management Grouphttp://www.omg.org/uml/, 1999

[11] Empresa Brasileira de Pesquisa Agropecuária -Centro Nacional de Pesquisa de Solos,http://www.cnps.embrapa.br, 1999

[12] Instituto Agronômico, http://www.iac.br, 1999

Page 37: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Extensões ao Modelo OMT-G para Produção deEsquemas Dinâmicos e de Apresentação

CLODOVEU A. DAVIS JR.1

ALBERTO H. F. LAENDER2

1PRODABEL - Empresa de Informática e Informação do Município de Belo Horizonte,Av. Presidente Carlos Luz, 1275, 31230-000 Belo Horizonte, MG, Brasil

[email protected]/UFMG - Departamento de Ciência da Computação - Universidade Federal de Minas Gerais,

Av. Presidente Antônio Carlos, 6627, 31270-901 Belo Horizonte, MG, [email protected]

Abstract. A construção de um esquema conceitual é parte fundamental do processo de desenvolvimento deaplicações. No caso das aplicações geográficas, no entanto, é necessário levar em consideração outros fatores,especialmente relativos à representação dos objetos espaciais. Sem a definição da representação, torna-se difícila especificação dos relacionamentos espaciais e topológicos entre os objetos. Reunindo elementos conceituais ede representação, aplicações geográficas podem ser modeladas estaticamente usando o modelo OMT-G. Esteartigo propõe extensões ao modelo OMT-G, no sentido de permitir a especificação de transformações entrerepresentações, por meio de um esquema dinâmico. Também são propostas extensões para a especificação dediferentes apresentações visuais para cada representação modelada, compondo um esquema de apresentações.As extensões propostas permitem que projetos de aplicações geográficas incorporem aspectos de múltiplasrepresentações e múltiplas apresentações, viabilizando assim o compartilhamento do banco de dados geográficoentre diferentes grupos de usuários.

1. IntroduçãoA construção de um esquema conceitual é parte fun-

damental do processo de desenvolvimento de sistemas deinformação. Durante a modelagem, é necessário identificartodos os objetos do mundo real que de alguma forma in-terfiram no sistema, por atuar na parcela do mundo realque se está procurando modelar. Em seguida, é precisoextrair um conjunto de características de cada objetoidentificado, em um processo de abstração. A incorpora-ção da geometria e da topologia dos objetos espaciais aoesquema conceitual consiste em escolher uma representa-ção adequada para cada um deles, que seja capaz de in-corporar suas características espaciais, como localização,topologia e forma geométrica. A existência de uma repre-sentação para um objeto espacial não determina comple-tamente sua aparência visual, ou seja, a forma segundo aqual o objeto será apresentado ao usuário, na tela ou empapel. A cada representação podem corresponder uma oumais apresentações, alternativas de visualização adequa-das para comunicar o significado dos dados geográficos deacordo com as necessidades do usuário e da aplicação.

Ao considerar a necessidade de modelagem de repre-sentações e apresentações, percebe-se que os modelos dedados geográficos atualmente disponíveis não incorporamrecursos para que transformações envolvendo representa-ções e apresentações sejam concebidas. Este trabalho pro-põe um conjunto de extensões ao modelo OMT-G [2, 3,4], de modo a incorporar primitivas para a construção deesquemas dinâmicos e de esquemas de apresentação, e

está organizado como se segue. A Seção 2 apresenta osníveis de abstração adotados para modelagem de dadosgeográficos. A Seção 3 apresenta brevemente o modeloOMT-G. A Seção 4 apresenta as extensões propostas.Finalmente, a Seção 5 apresenta as conclusões do trabalhoe discute aspectos relativos à sua utilização prática.

2. Níveis de AbstraçãoModelos de dados variam de acordo com o nível de

abstração. Para aplicações geográficas, existem basica-mente quatro níveis distintos de abstração (Figura 1). Nonível do mundo real estão os fenômenos geográficos reaisa serem representados. O nível de representação concei-tual oferece um conjunto de conceitos formais com osquais as entidades geográficas podem ser modeladas daforma em que são percebidas pelo usuário, em um nívelalto de abstração. Neste nível são definidas as classes bá-sicas, contínuas ou discretas, que serão criadas no bancode dados, cada qual associada a uma classe de representa-ção espacial, sendo que é possível que um elemento domundo real possua várias representações. Em seguida, onível de apresentação oferece ferramentas com as quais sepode especificar os diferentes aspectos visuais que as enti-dades geográficas têm de assumir ao longo de seu uso emaplicações. Neste nível, cada alternativa de representaçãodefinida no nível anterior é associada a uma ou mais apre-sentações. Finalmente, no nível de implementação sãodefinidos padrões, mecanismos de armazenamento, estru-turas de dados e funções de uso geral para implementar

Page 38: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

fisicamente cada representação, conforme definida nonível de representação conceitual, e cada apresentaçãoexigida, conforme definido no nível de apresentação.

Nível derepresentação

conceitual

Nível deapresentação

Nível deimplementação

Nível do mundoreal

Figura 1 - Níveis de especificação de aplicaçõesgeográficas

A definição de níveis de abstração apresentada difereda proposta em [6]. Existe uma certa discordância quantoà fusão, em um único nível, das definições conceituais ede representação. É nosso entendimento que a modelagemconceitual para aplicações geográficas não pode ser levadaa termo sem que alguma forma de representação seja defi-nida para os objetos espaciais, sob pena de não se conse-guir conceber adequadamente os relacionamentos entreesses objetos. Grande parte da discussão ao redor desteaspecto decorre de uma confusão entre representação eapresentação, e portanto a inclusão de um nível separadopara receber as especificações relativas a aspecto visual egráfico contribui para resolver o problema. O nível deapresentação situa-se entre o nível de representação con-ceitual e o de implementação, uma vez que introduz deta-lhes de especificação parcialmente dependentes dos recur-sos disponíveis para a implementação, mas ao mesmotempo define os parâmetros recomendáveis para o melhoruso da informação concebida para a aplicação.

3. Modelagem Usando o Modelo OMT-GO modelo OMT-G propõe uma série de primitivas

que permitem construir o esquema estático de aplicaçõesgeográficas, no qual são especificadas as classes envolvi-das no problema, juntamente com suas representaçõesbásicas e seus relacionamentos. A partir do esquema es-tático, é possível produzir um conjunto de restrições deintegridade espacial que precisam ser implementadas pelaaplicação ou pelo banco de dados geográfico utilizado.

O modelo OMT-G parte das primitivas definidas parao diagrama de classes da Universal Modeling Language(UML) [12], introduzindo primitivas geográficas com oobjetivo de aumentar a capacidade de representação se-mântica daquele modelo, e portanto reduzindo a distânciaentre o modelo mental do espaço a ser modelado e o mo-delo de representação usual. O modelo OMT-G é baseadoem três conceitos principais: classes, relacionamentos erestrições de integridade espaciais. Classes e relaciona-mentos definem as primitivas básicas usadas para criaresquemas estáticos de aplicação. A identificação de restri-ções de integridade espacial é uma atividade importanteno projeto de uma aplicação, e consiste na identificação decondições que se precisam ser garantidas para que o bancode dados esteja sempre íntegro. As restrições de integri-dade espaciais para o modelo OMT-G foram detalhadasem [3] e [4], e não serão apresentadas aqui. As primitivasde classes e relacionamentos serão apresentadas a seguir.

3.1 Classes

As classes definidas pelo modelo OMT-G podem sergeorreferenciadas ou convencionais. Uma classe georre-ferenciada descreve um conjunto de objetos que têm re-presentação espacial e que são associados a elementos domundo real localizáveis na Terra [5], assumindo a visão decampos e objetos proposta por Goodchild [9]. Uma classeconvencional descreve um conjunto de objetos com pro-priedades, comportamento, relacionamentos e semânticasemelhantes, o qual pode ter algum tipo de relacionamentocom objetos espaciais, mas não possui propriedades geo-gráficas ou geométricas.

As classes georreferenciadas são especializadas emgeo-campos e geo-objetos. Geo-campos representam ob-jetos e fenômenos distribuídos continuamente no espaço,correspondendo a variáveis como tipo de solo, relevo egeologia [5]. Geo-objetos representam objetos geográficosparticulares, individualizáveis, associados a elementos domundo real, como edificações, rios e árvores. As classesconvencionais são simbolizadas exatamente como naUML. As classes georreferenciadas são simbolizadas nomodelo OMT-G de forma semelhante (Figura 2a), inclu-indo no canto superior esquerdo um retângulo que é usadopara indicar a geometria da representação. Em ambos oscasos, símbolos simplificados podem ser usados (Figura2b). Os objetos podem ter ou não atributos não espaciaisassociados, listados na seção central da representaçãocompleta. Métodos ou operações associadas são especifi-cadas na seção inferior.

O modelo OMT-G apresenta um conjunto fixo de al-ternativas de representação geométrica, usando uma sim-bologia que distingue geo-objetos (Figura 3) e geo-campos(Figura 4). São definidas cinco classes descendentes de

Page 39: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

geo-campo (isolinhas, polígonos adjacentes, tesselação,amostragem e rede triangular irregular) e duas classesdescendentes de geo-objeto, geo-objeto com geometria egeo-objeto com geometria e topologia, sendo que da pri-meira descendem as classes ponto, linha e polígono, e dasegunda descendem as classes nó de rede, arco unidireci-onal e arco bidirecional.

Atr ibutos

Operações

Nome da c lasse

Operações

Atr ibutos

Nome daclasse Nome da

classe

Nome da c lasse

(a)representação

completa

(b)representação

simpl i f icada

Classegeorreferenciada

Classe convencional

Figura 2 - Notação gráfica para as classes do modeloOMT-G

Atr ibutos Gráf icos

Atr ibutos

ImagemL A N D S A T

Atr ibutos Gráf icos

Atr ibutos

Pontoscotados

Amost rasTesse lação

TemperaturaCurvas de

nívelPedologia

Rede tr iangularirregular

Pol ígonosadjacentesIsol inhas

Figura 3 - Geo-campos

Trecho deesgoto

Tubu lação deágua

Cruzamento

Linha bid i recionalL inha unid i rec ional Nó de rede

Geo-objetos com geometria e topologia

Árvore Meio- f io Ed i f icação

Ponto Po l ígonoL inha

Geo-objetos com geometria

Figura 4 - Geo-objetos

3.2 Relacionamentos

Considerando a importância dos relacionamentos es-paciais e não espaciais para a compreensão do espaço mo-delado, o modelo OMT-G representa os três tipos de rela-

cionamento que podem ocorrer entre suas classes: associ-ações simples, relacionamentos topológicos em rede erelacionamentos espaciais. Associações simples repre-sentam relacionamentos estruturais entre objetos de clas-ses diferentes, convencionais ou georreferenciadas. Rela-cionamentos espaciais representam relações topológicas,métricas, ordinais e fuzzy. Relacionamentos de rede sãorelacionamentos entre objetos que estão conectados unscom os outros.

(a) Associação s imples

(b) Relacionamento espacia l

(d) Relacionamento de rede arco-arco

Rodov ia

Malha rodoviár ia

(c) Relacionamento de rede arco-nó

Segmento delogradouro

CruzamentoRede v iár ia

Edi f icação LoteC o n t é m

Edif icaçãoProprietár io

Per tence a

Figura 5 - Relacionamentos

No modelo OMT-G, associações simples são repre-sentadas graficamente com linhas contínuas, enquantorelacionamentos espaciais são representados com linhaspontilhadas (Figura 5a e b), o que facilita a distinção vi-sual entre relacionamentos baseados em atributos alfanu-méricos e baseados na localização e geometria dos ob-jetos. O nome do relacionamento é anotado sobre a linha,e uma seta pode ser desenhada para deixar clara a direçãode leitura (por exemplo, na Figura 5b, lê-se “lote contémedificação”). Relacionamentos de rede são indicados porduas linhas pontilhadas paralelas, entre as quais o nome dorelacionamento é anotado (Figura 5c). Os relacionamentossão em geral especificados entre uma classe de nós e umaclasse de arcos, mas estruturas de redes sem nós podemser definidas, especificando um relacionamento recursivosobre uma classe de arcos (Figura 5d). Os relacionamentossão ainda caracterizados por sua cardinalidade. A notaçãode cardinalidade adotada pelo modelo OMT-G é a mesmaempregada pela UML, usando números para indicar quan-

Page 40: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

tidades, reticências para denotar faixas e o asterisco parasimbolizar “muitos”, como em 1..* .

3.3 Generalização e especialização

Generalização é o processo de definição de classesque são mais genéricas (superclasses) do que classes comcaracterísticas semelhantes (subclasses) [8, 11]. A espe-cialização é o processo inverso, no qual classes mais es-pecíficas são detalhadas a partir de uma classe mais gené-rica, adicionando novas propriedades na forma de atribu-tos. Cada subclasse herda atributos, operações e associ-ações de sua superclasse.

No modelo OMT-G, as abstrações de generalização eespecialização se aplicam tanto a classes georreferencia-das quanto a classes convencionais, seguindo as definiçõese a notação propostas na UML, em que um triângulo co-necta a superclasse a suas subclasses. Cada generalizaçãopode ter um discriminador associado, que indica qual pro-priedade ou característica está sendo abstraída pelo relaci-onamento de generalização.

(d) Sobreposto/total

Tipo de transporte

Terminal

Metrô Ônibus

(c) Disjunto/total

Tipo de escola

Escolaparticular

Escola

Escolapública

(b) Sobreposto/parcial

Ramo de atividade

Atividadeeconômica

Comércio Indústria

(a) Disjunto/parcial

Sinal

Placa detrânsito

Ponto deônibus

Paradaproibida

Figura 6 - Exemplos de generalização espacial

As generalizações (espaciais ou não) podem ser espe-cificadas como totais ou parciais [11, 12]. Uma generali-zação é total quando a união de todas as instâncias dassubclasses é equivalente ao conjunto completo de instân-cias da superclasse. A UML representa a totalidade atra-vés do uso dos elementos de restrição predefinidos com-pleto e incompleto, mas no modelo OMT-G foi adotada anotação introduzida em [11], na qual um ponto é colocadono ápice do triângulo para denotar a totalidade (Figura 6).Além disso, o modelo OMT-G também adota a notaçãoOMT [13] para os elementos de restrição predefinidosdisjunto e sobreposto da UML, ou seja, em uma generali-zação disjunta o triângulo é deixado em branco e em umageneralização sobreposta o triângulo é preenchido. Por-

tanto, a combinação de disjunção e totalidade gera quatrotipos de restrição aplicáveis a generalização e especializa-ção. A Figura 6 apresenta exemplos de cada combinação.

3.4 Agregação

Agregação é uma forma especial de associação entreobjetos, onde se considera que um deles é montado a par-tir de outros. A notação gráfica usada no modelo OMT-Gsegue a empregada na UML. Uma agregação pode ocorrerentre classes convencionais, entre classes georreferencia-das ou entre uma classe convencional e uma classe georre-ferenciada. Quando a agregação ocorre entre classes geor-referenciadas, é necessário usar a agregação espacial.

Quadra Lote

Figura 7 - Agregação espacial

A agregação espacial é um caso especial de agrega-ção na qual relacionamentos topológicos “todo-parte” sãoexplicitados [1, 10]. A agregação espacial indica que ageometria de cada parte deve estar totalmente contida nageometria do todo. Além disso, não é permitida a super-posição entre a geometria das partes e a geometria do tododeve ser totalmente coberta pela geometria das partes. Umexemplo dessa primitiva está apresentado na Figura 7, quemostra uma situação em que quadras são compostas delotes, ou seja, as quadras são geometricamente equivalen-tes à união dos lotes contidos nelas.

3.5 Generalização Cartográfica

A generalização, no sentido cartográfico, pode serdefinida como uma série de transformações que são reali-zadas sobre a representação da informação espacial, cujoobjetivo é melhorar a legibilidade e a compreensão dosdados. Um objeto do mundo real pode ter diversas repre-sentações, de acordo com a escala de visualização: umacidade pode ser representada como um ponto em um mapade escala pequena, e como um polígono em um mapa deescala maior.

Definir se a representação deve ser mais simples oumais elaborada depende da percepção que o usuário temdo objeto correspondente no mundo real, e de como essarepresentação afeta os relacionamentos espaciais que po-dem ser estabelecidos com outros objetos modelados.Considerando a necessidade de tais relacionamentos, podehaver a demanda para mais de uma representação para umdado objeto [7]. Esse é freqüentemente o caso quando ainformação geográfica precisa ser compartilhada entrediversas aplicações.

A primitiva de generalização cartográfica foi inclu-

Page 41: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

ída no modelo OMT-G para registrar a necessidade derepresentações diferentes para um mesmo objeto. Nessaprimitiva, a superclasse não precisa ter uma representaçãoespecífica, já que poderá ser percebida de maneiras dife-rentes, conforme especificado nas subclasses. Estas sãorepresentadas por formas geométricas distintas, podendoherdar os atributos alfanuméricos da superclasse e aindapossuir atributos próprios. O objetivo dessa primitiva épermitir a especificação de relacionamentos independentesenvolvendo cada alternativa de representação considerada,em particular relacionamentos espaciais, que dependem dageometria da representação. É permitido que a mesmaalternativa de representação ocorra em mais de umaclasse, pois em cada uma o nível de detalhamento ou re-solução pode variar.

Sedemunic ipa l

Frontei rasmunic ipa is

C idade

(b) Var iação de acordo com a escala (d is junto)

(a) Var iação de acordo com a forma (superposto)

Rio

Eixo de r io MargensSegmento de

rioÁrea

inundada

Forma

Esca la

Figura 8 - Generalização cartográfica

A generalização cartográfica pode ocorrer em duasvariações: de acordo com a forma geométrica ou deacordo com a escala. A variação de acordo com a forma éusada para registrar a existência de múltiplas representa-ções independentes de escala para uma classe. A variaçãode acordo com a escala é usada para especificar diferentesaspectos geométricos de uma classe dada, cada qual cor-respondendo a uma faixa de escalas. A Figura 8 apresentaum exemplo de cada variação.

A notação usada para generalização cartográfica uti-liza um quadrado para conectar a superclasse a suas sub-classes. As linhas utilizadas são pontilhadas. As palavrasEscala e Forma são usadas como discriminadores. O qua-drado é deixado em branco quando as subclasses são dis-juntas, e preenchido se as subclasses podem se superpor(Figura 8).

4. Extensões ao Modelo OMT-GQuando o esquema estático indica a necessidade de

múltiplas representações de alguma classe, ou quando aaplicação envolve a derivação de alguma classe a partir deoutras, propõe-se a criação de um esquema dinâmico.Nesse esquema, todos os processos de transformação dedados podem ser especificados, permitindo a identificaçãode quaisquer métodos que sejam necessários para a im-plementação. Além do esquema dinâmico, propõe-se a cri-ação de um esquema de apresentação, onde são especifi-cadas as diretrizes para a visualização de qualquer repre-sentação prevista no esquema estático, usando os recursosdo SIG subjacente. Cada classe pode ter várias apresenta-ções, cada qual adequada para uma determinada finalidadede uso – de maneira análoga à definição da cartografiapara os mapas em papel.

4.1 Esquema dinâmico

Os esquemas dinâmicos são baseados nas primitivasde classe, conforme definidas para os esquemas estáticosdo modelo OMT-G. As classes que estão envolvidas emalgum tipo de transformação são conectadas por meio delinhas contínuas, com setas que indicam a direção datransformação. Os operadores de transformação envolvi-dos e seus parâmetros, quando houver, são indicados pormeio de texto sobre a linha que denota a transformação.

No esquema dinâmico, pode-se indicar se o resultadoda transformação precisa ou não ser materializado. Classesresultantes muito simples, ou que são passos intermediá-rios em uma transformação mais complexa, freqüente-mente não precisam ser materializadas, e podem ser arma-zenadas apenas temporariamente. Tais classes temporáriassão indicadas usando linhas tracejadas em seu contorno.As classes que são resultantes de alguma transformação eque precisam ser materializadas (devido à complexidadedo processo ou às necessidades específicas da aplicação)são denotadas com linhas contínuas, exatamente como noesquema estático.

Observe-se que a especificação de transformações noesquema dinâmico é em geral exigida quando as primiti-vas de generalização cartográfica e de agregação espacialsão usadas no esquema estático. Essas duas primitivas sãoindicativas da possibilidade de produzir uma representa-ção a partir de outras. Quando o esquema estático contémuma primitiva de agregação espacial, existe freqüente-mente a necessidade de se especificar a operação que vaiser usada para construir o todo a partir das partes.

A Figura 9 apresenta um fragmento de esquema está-tico onde é usada a primitiva de generalização cartográ-fica. Ao interpretar esse esquema estático, não fica clarose e como as três representações alternativas para a classe

Page 42: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Cidade irão coexistir na aplicação. Embora algum rela-cionamento entre elas exista, conforme indicado pelaprimitiva de generalização cartográfica, o esquema está-tico não explora a semântica que conduz à possibilidadede gerar algumas representações a partir de outras. O es-quema dinâmico (Figura 10) resolve esse problema, re-gistrando o entendimento de que a classe Fronteirasmunicipais contém informação suficiente para produ-zir a geometria das outras duas classes.

Cidadegrande

Fronteirasmunicipais

Cidade

Escala

Cidade ponto

Figura 9 - Representações alternativas para a classeCidade (esquema estático)

Centró ide

N o m eEstadoPopu lação

Frontei rasmunic ipais

Cent ró ide

Cent ró ideSelec ionar(População > 100,000) N o m e

EstadoPopu lação

Cidadegrande

N o m eEstadoPopu lação

Cidade ponto

Figura 10 - Transformações entre representações daclasse Cidade (esquema dinâmico)

InterpolarTIN

Nível

Relevo

Cruzamento

Nível

Nível nocruzamentoInterpolarTIN

Figura 11 - Exemplo de operação (esquema dinâmico)

As transformações indicadas no esquema dinâmicopodem relacionar qualquer número de classes originais,bem como qualquer número de classes resultantes, depen-dendo da natureza da operação de transformação. Cadeiasde transformações também podem ser definidas, permi-tindo dessa forma a especificação de processos complexosde análise espacial. A Figura 11 apresenta um exemplo

desse tipo de operação. Na figura, um geo-campo daclasse TIN, representando o relevo, é usado juntamentecom uma classe de cruzamentos de vias (nós de rede) paraproduzir outro geo-campo, Nível no cruzamento ,que é representado por um conjunto de amostras. Naclasse resultante, a geometria (localização das amostras) éretirada da classe Cruzamento , e o valor do campo emcada posição é calculado através do métodoInterpolarTIN , desta maneira preenchendo o atributoNível do geo-campo resultante.

A Figura 12 apresenta um exemplo de esquema di-nâmico resultante de uma agregação espacial, correspon-dendo ao fragmento de esquema estático apresentado naFigura 7. Instâncias da classe Lote são unidas, usandoum operador de generalização cartográfica denominadoFusão [7], para criar instâncias da classe Quadra . Ob-serve que a transformação também indica que um atributode Quadra , IPTU_total , deve ser preenchido com osomatório dos atributos Valor_IPTU dos lotes corres-pondentes. Algumas vezes, no entanto, não é possível es-pecificar uma transformação automática como essa, espe-cialmente nos casos em que o todo é obtido primeiro e aspartes são então extraídas dele.

Cod_quadraCod_loteValor_IPTU

Lote

Cod_quadraIPTU_total =sum(Lote.Valor_IPTU)

Quadra

Fusão

Figura 12 - Agregação no esquema dinâmico

Um estudo sobre a possível variação de operadoresTR, considerando todas as combinações de tipos de repre-sentação para as classes original e resultante, foi apresen-tado em [7] como parte de um arcabouço conceitual sobremúltiplas representações. Os operadores empregados paratais transformações são baseados em algoritmos bem co-nhecidos nas áreas de geometria computacional, generali-zação cartográfica e análise espacial.

4.2 Esquema de apresentação

O esquema de apresentação, proposto a seguir, pro-cura reunir os requisitos definidos pelo usuário quanto àsalternativas de apresentação e saída para cada objeto geo-gráfico. Essas alternativas podem incluir apresentaçõescriadas especificamente para visualização em tela, paraimpressão na forma de mapas ou cartas, para interpretaçãovisual em um processo de análise, e outras.

Cada apresentação é definida a partir de uma repre-sentação contida no esquemas estático ou no esquemadinâmico do nível de representação conceitual. Operaçõesde transformação para apresentação (TA) são especifica-das, permitindo obter o aspecto visual desejado a partir da

Page 43: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

simples forma geométrica definida para a representação.Observe-se que operações TA não modificam a alternativade representação definida previamente, nem mudam o de-talhamento definido no nível de representação conceitual.Se isso for necessário, uma nova representação tem de sercriada a partir de uma representação existente, usando asferramentas de especificação de múltiplas representações(como a primitiva de generalização cartográfica) e regis-trando essa alternativa nos esquemas estático e dinâmico.

As operações TA mais comuns envolvem a simplesdefinição de atributos gráficos. Como o esquema de apre-sentação está mais próximo da implementação que os es-quemas estático e dinâmico, os recursos gráficos espe-cíficos do SIG subjacente podem ser levados em conta.Outros operadores mais sofisticados (classificação, sim-bolização, exagero, deslocamento, destaque) também po-dem ser empregados. Um estudo sobre a variedade deoperadores para TA foi apresentado em [7].

O esquema de apresentação necessita de apenas trêsprimitivas. A primeira é a própria primitiva de classes,definida para os esquemas estático e dinâmico. A segundaé usada para indicar a operação TA, de maneira seme-lhante à usada para denotar as transformações no esquemadinâmico. É composta de uma linha tracejada simples,com uma seta que indica o sentido da operação, sobre aqual é especificado o operador a ser usado. No processode especificação dessa expressão de transformação, quais-quer características geométricas ou atributos alfanuméri-cos que foram definidos no nível de representação con-ceitual para a classe podem ser usadas como parâmetros.As linhas indicando operações TA são tracejadas para dis-tingui-las visualmente das operações de transformação derepresentações, que são especificadas no esquema dinâ-mico com linhas contínuas. A terceira primitiva serve paraespecificar uma apresentação, e contém duas seções. Aseção superior indica o nome da classe, o nome da apre-sentação, e a aplicação na qual é usada. A segunda é divi-dida em duas partes: à esquerda, um pictograma indica oaspecto visual dos objetos após a transformação, à seme-lhança de uma legenda cartográfica, e à direita são lança-das especificações mais precisas quanto aos atributos grá-ficos, incluindo cor da linha, tipo de linha, espessura dalinha, padrão de preenchimento, cor de preenchimento, enome do símbolo. A especificação dos atributos gráficospode ser feita já considerando a codificação de símbolosusada pelo SIG subjacente. Pode existir qualquer númerode pictogramas na seção esquerda da primitiva de especi-ficação de apresentações, cada qual associado a um valorou faixa de valores obtidos a partir das características decada objeto. Nesse caso, a seção da direita deve detalharos atributos gráficos de cada apresentação gerada. Atri-butos comuns podem ser especificados apenas uma vez,

enquanto atributos variáveis são especificados como listasde valores individuais. Como no caso do esquema dinâ-mico, as apresentações são indicadas com linhas traceja-das quando não precisam ser materializadas no banco dedados, e com linhas contínuas no caso contrário.

Cada classe georreferenciada especificada no es-quema estático precisa ter pelo menos uma apresentaçãocorrespondente especificada no esquema de apresentação.Caso exista mais de uma apresentação para uma dada re-presentação, uma delas deve ser identificada como a de-fault. Alternativamente, cada usuário ou aplicação podeeleger sua apresentação default.

Observe-se que a definição de apresentações a partirde uma representação é um conceito que pode ser tambémaplicado no caso de objetos convencionais, ou seja, obje-tos que não possuem características geométricas ou geo-gráficas. Isso significa que aspectos visuais alternativospara tabelas e campos podem também ser especificados nonível de apresentação, simplificando o trabalho final deimplementação.

Cidade pontodefault

Apresentação em tela

Cor = pretoNome do s ímbo lo = S03

Cidade pontoFaixas de população

Mapa rodoviário

< 10

10-20

20-50

50-100

> 100

Cor = pretoNome do s ímbolo = {S02,S03, S04, S05, S06}

N o m eEstadoPopu lação

Cidade ponto

ApresentarSimbolo( )

Simbol izar(População / 1000)

Figura 13 - Esquema de apresentação para a classeCidade ponto

Como exemplo, considere-se a definição de apresen-tações para a classe Cidade ponto , apresentada anteri-ormente. Primeiro, uma apresentação default para visuali-zação em tela é definida. Em seguida, uma apresentaçãodiferente é especificada, na qual diferentes símbolos sãoatribuídos às instâncias dependendo do valor do atributoPopulação , para um mapa rodoviário (Figura 13).

A Figura 14 introduz outro exemplo de esquema deapresentação. A classe básica, neste caso, representa seto-res censitários como polígonos. Três diferentes apresenta-ções são derivadas desta representação: a primeira é aapresentação default para a tela, usando um padrão ha-churado; a segunda mostra os resultados de uma classifi-cação sobre o atributo de renda média do chefe do domi-cílio; a terceira apresenta apenas os setores onde a densi-

Page 44: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

dade demográfica é considerada excessivamente alta,como parte de uma análise de risco para a saúde.

Area

Cód igoQtMasQtFemRendaMedChe fe

Setorcensi tár io

Setor censitárioDefault

Apresentação em tela

Cor da l inha = magentaEspessura da l inha = 1Preench imento = hachuradoCor de preench imento = magenta

Setor censitárioDensidade demográfica em escala de cinza

Mapa de renda

0-10

10-20

20-50

50-100

> 100

Cor da l inha = pretoEspessura da l inha = 1Preenchimento = só l idoCor de preenchimento ={branco, c inza 25%, c inza50%, c inza 75%, preto}

Setor censitárioÁreas excessivamente densasAnálise de risco para a saúde

Cor = { t ransparente, preto}Espessura da l inha = {0, 1}Preenchimento = só l idoCor de preench imento ={ t ransparente, vermelho}

0-300

>300

Classi f icar( (QtMas +QtFem) / Area(obj) )

C lass i f icar ( (RendaMedChefe) /1000)

ApresentarArea()

Figura 14 - Esquema de apresentação para a classeSetor censitário

5. ConclusãoOs recursos complementares ao modelo OMT-G

apresentados neste trabalho são fundamentalmente impor-tantes para a correta concepção e documentação de aplica-ções geográficas. A aproximação entre o modelo mentaldo usuário e o modelo de implementação passa a se darcom maior amplitude, uma vez que os aspectos dinâmicose a aparência visual dos objetos são melhor detalhados.

Ao final do processo de modelagem, uma avaliaçãoda funcionalidade exigida para as transformações podeajudar a orientar o processo de escolha do SIG mais ade-quada para a implementação. Adicionalmente, o conjuntode esquemas proposto aqui pode facilitar uma eventualmigração da aplicação para uma plataforma diferente daque foi utilizada para a implementação original. Nessesentido, os esquemas dinâmico e de apresentação consti-tuem também ferramentas de engenharia reversa para apli-cações já desenvolvidas.

Este trabalho está prosseguindo, através do desenvol-vimento de um conjunto de funções e extensões a um SIGcomercial, visando demonstrar a validade dos conceitosaqui desenvolvidos no caso de uma aplicação real. Umaferramenta de modelagem de dados geográficos baseadano modelo OMG-T, incluindo todas as primitivas apre-sentadas para os esquemas estático, dinâmico e de apre-

sentação e apoiada no software de diagramação Visio, estáatualmente em fase de testes.

6. Referências[1] Abrantes, G., Carapuça, R. Explicit representation ofdata that depend on topological relationships and controlover data consistency. In Proc. Fifth EuropeanConference and Exhibition on GIS, 1:869-877, 1994.

[2] Borges, K. A. V. Modelagem de Dados Geográficos:Uma Extensão do Modelo OMT para AplicaçõesGeográficas, Dissertação de Mestrado, Fundação JoãoPinheiro, Belo Horizonte, 1997.

[3] Borges, K. A. V., Laender A. H. F., Davis Jr., C. A.Spatial data integrity constraints in object orientedgeographic data modeling. In Proceedings of the 7thInternational Symposium on Advances in GeographicInformation Systems (ACM GIS’99), 1-6, 1999.

[4] Borges, K. A. V., Laender, A. H. F., Davis Jr., C. A.OMT-G: a OMT-G: An Object Modeling Technique forGeographic Applications. Submetido à publicação emGeoInformatica, 2000.

[5] Câmara, G. Modelos, Linguagens e Arquiteturaspara Bancos de Dados Geográficos. PhD thesis, INPE,1995.

[6] Câmara, G., Casanova, M. A., Hemerly, A.,Magalhães, G. C. e Medeiros, C. M. B. Anatomia deSistemas de Informação Geográfica. UNICAMP, 1996.

[7] Davis Jr., C. A., Laender, A. H. F. Multiplerepresentations in GIS: materialization through geometric,map generalization, and spatial analysis operations. InProc. 7th ACM Intl. Symp. Advances in GIS, 60-65, 1999.

[8] Elmasri, R., Navathe, S. Fundamentals of databasesystems. 2nd Edition. Addison-Wesley, 1994. 873p.

[9] Goodchild, M. F. Geographical data modeling.Computers & Geosciences, 18(4):401-408, 1992.

[10] Kösters, G., Pagel, B., Six, H. Object-orientedrequirements engineering for GIS-applications. In Proc.Intl. Workshop Advances in GIS, 61-69, 1995.

[11] Laender, A. H. F., Flynn, D. J. A semanticcomparison of modelling capabilities of the ER and NIAMmodels. In Elmasri, R., Kouramajian, V., Thalheim, B.(editors) Entity-Relationship approach – ER’93, 242-256,Springer-Verlag, 1994.

[12] Rational Software Corporation. The UnifiedModeling Language: notation guide, version 1.1 July1997. (http://www.rational.com).

[13] Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F.,Lorensen, W. Object-Oriented Modeling and Design.Prentice-Hall, 1991.

Page 45: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Towards A Unified Framework ForGeographical Data Models

GILBERTO CÂMARA1,

ANTÔNIO MIGUEL VIEIRA MONTEIRO1,

JOÃO ARGEMIRO PAIVA1 ,

JONAS GOMES2,

LUIZ VELHO2

1IMPA- Instituto de Matemática Pura e Aplicada, Estrada Dona Castorina, 11, 22460 Rio de Janeiro, RJ, Brasil 2INPE—Instituto Nacional de Pesquisas Espaciais, Caixa Postal 515, 12201 São José dos Campos, SP, Brasil

Abstract. This paper describes a unified framework for the problems of modelling and processing geographicalentities. We propose a general definition of geographical objects, and show that the different types of geographical datacan be expressed as particular cases of this definition. Furthermore, we present a taxonomy for the various types of GISoperations, defined in terms of the properties of this definition. Our goal is to argue that GIS data types and operations canbe defined based on a single formal notion, which encapsulates the GIS concepts of both fields and objects, with importantconsequences for system and interface design, interoperabilty issues and language proposal.

1 Introduction

The literature on GIS usually considers two broadclasses of models of geographic information: field-basedand object-based (Coucelis, 1992). The field modelrepresents the geographical data as a set of spatialdistributions over the geographical space. The objectmodel represents the world as a surface occupied bydiscrete, identifiable entities, with a geometricalrepresentation and descriptive attributes.

Some authors have already pointed out that the fieldand object views have their roots in different cognitiveperceptions of the geographical space and that they areextreme, idealised notions from a more complex taxonomy(Burrough and Frank, 1995; Couclelis, 1996).

Notwithstanding the importance of the conceptualdebate, it is important to consider the challenges ofrepresenting these concepts in a computer environment.We consider that the computer-based modelling ofgeographical reality requires a level of formalization andgeneralization (either explicit or implicit), which isnecessary to define precisely the nature of operations to beperformed in a GIS.

An additional important consideration is the recentemphasis on the GIScience literature on the definition ofontologies of the geographical space (Smith and Mark,1998). As the authors have pointed out on a companionpaper (Câmara et al, 2000), the idea of ontologies couldform the basis for a general model for spatial informationdata. Therefore, in the application domains where suchontologies can be defined, it should be possible to define a

unified perspective for modelling and analysis ofgeographical entities can supersede the field-objectdichotomy.

In this perspective, we propose a general formaldefinition of geographical objects, and show that thedifferent types of geographical data can be expressed asparticular cases of this definition. Furthermore, we presenta taxonomy for the various types of GIS operations, interms of properties of this definition. Our goal is to showthat GIS data types and operations can be defined basedon a single formal notion, with important consequences forsystem and interface design, interoperabilty issues andlanguage proposal.

One of the most relevant aspects of this definition isits impact on the questions of interoperability. It has beenrecognized that interoperability in GIS requires a level ofsemantic modelling to account for the correspondence ofconcepts between different systems (Câmara et al, 1999).By establishing a formal notion and referring the conceptspresented in GIS literature to this definition, we couldprovide a basis for a unified semantic framework for GIS.

The paper is organized as follows. Section 2introduces the abstraction paradigm used as a basis for ourconcepts. Section 3 proposes a general definition forgeographical objects, discusses the representation of theseobjects and gives a classification. Section 4 shows howtraditional GIS concepts are related with the definition of ageographical object. Section 5 summarizes the typicaloperations on geographical data, as seen in the perspectiveof our framework. Section 6 outlines some consequences

Page 46: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

of this approach, both from a theoretical and a practicalpoint of view.

2 Abstraction Paradigms For GeographicalModelling

Geographical data modelling for GIS can be viewedas a special case of computational modelling of physicalphenomena. In computational modelling, a very importantand necessary step is to establish mathematical models,which create the abstract descriptions of the real-world

entities of interestgeometric modelliconceptual framewphysical, mathemaabstraction. His woVelho (1995) whparadigm” as a gencomputational mathgeometric modellindescribed as (See F

1. The physical world entities

2. The mathematidefinition of model.

3. The representavarious contin

4. The implemestructures are

the representa

These abstracin different areas oof the paradigm is fhas enabled the approach both for related with the sub

Our experiencuniverses paradigparticularly suited: elements such as mathematical level,

specialise this notion into classes of geographical datawhich encompasses traditional concepts from GIS such asfields and objects; at this level, we distinguish betweenraster and vector representations, which may be furtherspecialised, such as grids, TINs, image structures for rasterand arc-node and arc-node-polygon structures; at theimplementation level the actual coding takes place and wefind data structures such as R-trees and quad-trees.

One of the important consequences of the multiplelevels of abstraction paradigm is to make an explicit

PhysicalUniverse

MathematicalUniverse

RepresentationUniverse

ImplementationUniverse

Figure 1 – Abstraction levels in Computer Modeling (from Gomes and Velho, 1995)

. In a classical paper in the area ofng, Requicha (1980) established aork which distinguishes between thetical and representational levels ofrk was further extended by Gomes andich propose the “four universeseral modeling mechanism for appliedematics in general, and not only forg. The four abstraction levels are

igure 1):

universe, which comprises the real- that will be modelled in the computer.

cal universe, which includes a formalthe entities which are included in the

tion universe, which defines how theuous models are discretized.

ntation universe, where the dataassociated to the discretized objects of

tion universe.

tion levels have been sucessfully usedf computer graphics. An extensive useound in (Gomes et alli. 1998), where itformulation of a robust conceptualtheoretical issues and implementation,ject of warping and morphing.

e has shown that the use of the fourm for geographic data, is alsoAt the physical unverse level, we find

parcels, rivers and soil maps; at the we define geographical objects, and

reference to design decisions which are very oftenimplicitly and informally defined. For example, the use ofraster data structures to store terrain models in a computerimplies a mathematical formulation of what is a terrain. Inthis approach, we are compelled to define the elements ofeach universe and to establish the relation between theelements of each universe.

3 Geographical Objects

Using the abstraction paradigm introduced in theprevious section, the most important issue is concerned incharacterizing the mathematical entities which willdescribe the elements from the physical world. In the caseof geographical data, this leads us to the concept of ageographical object (geo-object, or simply go) as thebasic element of the mathematical universe. A geo-objectis a triple go = ( S, A, f ) where:

1. S ⊂ ℜ 2 is a subset of the Euclidean plane, it is thegeometrical support.

2. A is a set of attribute domains A1,..., An,

3. f: S→A1xA2x...xAn is the attribute function of thegeo-object, which associates, to each location in thesupport, a value on the set of attribute domains.

Note that this definition mimics that of a graphicalobject introduced in (Gomes et alli., 1996). It caters thedifferent subtypes of geographical data. We should remarkthat this definition, in accordance to our paradigm, iscompletely generic and is not bound to any particularrepresentation.

A geo-object is geo-referenced if there exists aparameterization g from the geometrical support S to thesurface of the earh. Mathematically the map g can bedescribed approximately by a parameterization from S tothe surface of a sphere. Different parameterizations are

Page 47: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

possible related with the various map projections of thesphere.

3.1 Representation of Geographical Objects

Once we have a geo-object the first step twardsimplementation is to obtain its representation. Therepresentation of a geo-object consists in discretising bothits geometric support and the attribute function. Therepresentation of the geometric support consists inrepresenting its topology and geometry. This topic isextensively studied in the area of geometric modelling. InGIS it is used mainly the representation techniques basedon decomposition. These techniques employ a top-downmethodology where the geometric support is decomposedinto simpler geometrical objects which are easier torepresent.

A very important geographical data is a terrain. As ageo-object a terrain is a real valued function f: S→ R,where S is a subset of the euclidean plane. Twocommonly used representations for terrains are the TIN(Triangulated Irregular Network) and the grid. A TINrepresentation subdivides the geometrical support S of theterrain into triangles in such a way to form a triangulation(intersecting triangles should share a vertex or edge). Agrid representation subdivides the geometrical support Sintro small rectangles so as to construct a lattice. Figures2(a) and 2(b) show, respectively, a TIN and a gridrepresentation of a terrain.

If we are interested only in the geometry andtopology of the terrain it is enough to use a TIN or a gridrepresentation. Nevertheless, in order to obtain a completerepresentation of the geo-object we must represent theattribute function on the TIN or on the grid. This isgenerally attained by sampling the function at eachelement of the representation. On a TIN samples aregenerally taken at the vertices of the triangles; on a gridsamples can be taken either at the vertices of the grid or atthe center of each rectangular cell.

Note that because the grid decomposition can beeasily structured into a rectangular lattice, thisrepresentation is completely characterized by giving the

number mxn of decomposition cells (rectangles) and thevalue of the attribute function in each cell. The structuringis given by the natural row/collumns ordering of thelattice. The grid representation of a geo-object is called amatrix or raster representation. The order mxn of thedecomposition matrix is called the spatial resolution of therepresentation.

To conclude the representation of the geo-object theattribute function should assume only a finite number ofattribute values (this corresponds to the use of a specifiednumber of bits to represent the attribute values). Theprocess of discretizing the attribute function is calledquantization (this comes from the usage of the term in thearea of image processing). Each of the values assumed bythe function is called a quantization level. The number ofquantization levels to be used depends on the nature of thegeographic data being represented.

We should remark that if the attribute function isquantized to n levels, a1, ..., an, then it determines a

aa

SS

S

S

SS f a

a

a

a

12

12

6

5

43

3

4

5

6

(a) (b)

Figure 2 – TIN (a) and Grid representation (b) of terrain.

Figure 3 – Attribute function with n values and associatedpartition

partition of the geometric support of the geo-object into acollection of disjoint sets Si, 1=1, ..., n, such that theattribute f at each set Si is constant and equal to ai. This isillustrated in the Figure 3 below.

An important issue when representing geo-objectsconsists in reconstructing the object from its discreterepresentation. We will not discuss this topic in thisarticle.

3.2 Classification of Geographical Objects

Geo-objects are classified according to the topologyof the support, and the values of the attribute function.Four different classes are possible: simple, composite,homogeneous and non-homogeneous geo-objects.

A geo-object is called simple if its support S is aconnected region in ℜ 2. Otherwise it is called a compositeobject. A geo-object is called homogeneous if its attributefunction assumes a constant value f(s) = (a1,…,an), ∀ s∈ S. Otherwise¸ the geo-object is called non-homogeneous. Some examples will be given below.

Page 48: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

3.2.1 Simple Geo-ObjectsFigure 4 shows an example of a simple geographic

object. The object describes a country named “Brazil”.The geometric support S is a connected region, and it hastwo constant attribute values: “name” and “population”.

In practice, the notion of a single, homogeneous geo-object is too simplistic and we need to use the morecomplex classes of geo-objects to characterize thegeographical entitities.

3.2.2 Composite homogeneous Geo-objectIn this case, we are dealing with a geographical

object where the geometric support S has severalconnected components and the attribute function assumesa constant value. Figure 5 shows an example, whichdescribes the country named “Japan”, where S is a set

with four connected components (representing the mainislands of the japanese archipelago), and the attributedomains A1 and A2 are “name” and “population”

.Figure 5 - Example Of A Composite Homogeneous Object.

3.2.3 Simple Non-homogeneous Geo-objectFor these object types, the support S is composed of

a connected region, but the attribute function f varies foreach point in the region. Depending on the number oflevels used in the representation of the attribute function,the geometric support is partitioned into a finite number of

sets. This concept corresponds to the notion of fields(Goodchild, 1992), such as vegetation maps andtopography. Figure 6 shows an example of a simple non-homogeneous object (a vegetation map). Note thepartitioning of the geometric support as we described inFigure 3.

3.2.4 Composite non-homogeneous Geo-objectIn this case, the geometrical support S is composed

of several connected components, and the attributefunction is not constant over S. This definition, in itsgenerality, has no direct counterpart in the traditional GISelements. However, there is a very important special case,namely:

• The geometric support is a disjoint collection ofconnected regions, S = ∪ Si , Si ∩ Si = ∅ (i ≠ j);

• The attribute function f is constant on each set Si , andthe constant values assumed are distinct, in general

This special type of composite non-homogeneousgeo-object constitues a formal definition of a coverage inthe ARC/INFO system (ESRI, 1994).

Figure 7 shows an example of anARC/INFΟ coverage, which corresponds to a map of theSouth Asia region, composed of different islands. The mapis dealt by the system as a single object, whosecomponents (the geometrical supports associated to eachisland) are mapped to different values of the attribute set.

4 Correspondence Of Definition ToGis Literature

In this section, we will attempt to relate the conceptsintroduced above with the traditional concepts in the GISliterature, especially those used by the OpenGIS

consortium (OpenGIS, 1998a; OpenGIS, 1998b). Sincethe latter definitions are mostly informal, an exactmatching is not always possible, but the approximatecorrespondences are already illustrative of the hazards ofsemantic model conversion between systems.

The OpenGIS model is based on an abstract class(feature) which has two specialisations: feature withgeometry and coverage.

Name=JapanPopulation=140 millions

Figure 4 - A simple and homogeneous geo-object.

Name=BrazilPopulation=130 millions

1. Land and forest2. Innundated forest3. Mangrove4. Deciduous forest

Figure 6 - Example of a simple and non-homogenous object.

Figure 7 Example of a composite, non-homogeneous object.

Page 49: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

The definition of feature with geometry allows forcomplex geometrical representations to be associated tothe same feature and for different features to share thesame geometrical representation. The notion of featurewith geometry in OpenGIS (OpenGIS, 1998a)corresponds roughly to our definition of a composed,homogeneous object (Section 3.2.2) or a single non-homogeneous geo-object (Section 3.2.3).

An OpenGIS coverage is an association between ageometric description of entitities and a set of attributes;this association is defined by a coverage function (orc_function) f:(geometry)→(attribute set). The OpenGIS

proponents chose not to use a representation-independentdefinition for coverage, and to define it in terms ofspecific geometrical representations, such as a gridcoverage, TIN coverage or geometry coverage (OGC,1998b).

Most of the OpenGIS specialisations of coverages,such as sample, grid, TIN and image can be considered ascomputer representations of the concept of a simple non-homogenous object (Section 3.2.3), using specific datastructures. However, their definition of geometry coveragecan be considered as a special case of a composite non-homogeneous object (section 3.2.4).

Thus, we can observe that the definitions of coverageon the OpenGIS are based on different formal concepts. Inother words, a grid coverage in OpenGIS does not havethe same formal basis as a geometry coverage. Thissituation may lead to potential problems in understandingand using this concept as a basis for interoperability. Infact, in a previous work (Câmara et al, 1999), we haveargued against the choice of the OpenGIS consortium ofusing industry terminology, such as feature and coverage,which is already content-rich and are associated by theusers with existing semantic concepts (OGC, 1998a; OGC,1998b).

Table 1 provides a resume of the relation between ourdefinitions and established industry notions.

TABLE 1 - CORRESPONDENCE OF DEFINITIONS

Connected geometrical support

Non-Connected geometrical support

Homogeneous Simple feature(OpenGIS)

Non-homogeneous

Tin, Grid, Image andSurfaceCoverage

(OpenGIS)

Coverage(ARC/INFO),

Feature CollectionCoverage (OpenGIS)

5 OPERATIONS ON GEOGRAPHICAL DATA

One of the main purposes of a single formaldefinition for geographical objects is to provide a unfiedperspective on the semantics of GIS operations. In currentpractice, the use of different models for fields and objectusually leads to implementation of different subsystems ona GIS: raster map operations implementing Tomlin’s MapAlgebra (Tomlin, 1990) and vector spatial queries withlanguages similar to Spatial SQL (Engenhofer, 1994). Thissituation is not always desirable. For example, “overlap” isa well-known concept for denoting a topologicalconfiguration between two geographical entitities(Egenhofer et al., 1994). In many GIS, it is possible toinquire if two entitities represented by vector polygons“overlap”, but it is not straightforward to inquire if thesame property holds for two digital terrain models.

5.1 Atomic Operations on Geographical Objects

A general GIS should have basic operations whichare generally applicable to different types of geographicalentities, including both field and object models. Therefore,we have chosen to characterize what we propose to be aminimal set of atomic operations, applicable to differenttypes of geographical objects (described in section 3).Upon this minimal set, more complex operations can beapplied, eventually leading to more specific operationclasses such as Map Algebra. In this section, we proposesuch a minimal set and in the next one, indicate how theseatomic operation can be used as building blocks of morecomplex ones.

We consider three classes of operations with geo-objects: Attribute based, Spatial based and Creation-Delete operations. We will describe these operationsbelow.

In keeping to our paradigm, which distinguishesbetween the mathematical and the representationuniverses, our definition of operations on geographicalobjects does not consider representation issues. Theseissues are considered to be implementation-dependent. Forexample, the pratical implementation of a mathematicaloperation between geo-objects may require theirconversion from a vector to a raster representation.Ideally, this conversion should be performed automaticallyby the system (under certain rules). The fact that mostcommercial systems require the user to request an explicitvector-to-raster conversion only serves as indication thatGIS technology would benefit from a formal basis, muchas the database tehcnology was improved by Codd'srelational model (Codd, 1962).

Using a formal definition as a basis, we candistinguish which operations are essential part of the

Page 50: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

properties of geographical objects and those which areconstrained by representation-based issues.

5.1.1 Attribute Based Operations.Two basic operations are proposed: VALUE (λ, Ai),

which returns the value of attibute Ai at location λ (thisoperation is actually the value of the attribute functuion forattribute Ai), and ASSIGN (λ, Ai, a), which assigns avalue a for attibute Ai at location λ. For shorthandnotation, we indicate these operations as f(λ, Ai) and α (λ,Ai, a) respectively.

5.1.2 Spatial based OperationsSpatial based operations can be futher classified

based on a spatial predicate denoted by ξ. As an examplewe have the following cases:

5.1.2.1 Topological restrictionsGiven a pair of geo-objects goi and goj, and a

topological predicate θ, these operations return a booleanvalue ({true, false}) based on the result of the applicationof the topological predicate θ(goi, goj). The topologicalpredicates proposed are EQUAL, DISJOINT,INTERSECT, TOUCH, CROSS, OVERLAP, CONTAINS,WITHIN, and RELATE, as defined by the OpenGISconsortium (OGIS, 1998).

5.1.2.2 Distance-based operationsGiven a pair of geo-objects goi and goj, the

DISTANCE(goi, goj) operation returns the distancemeasure between these two objects. For shorthandnotation, we indicate this operation as dist(goi, goj). Wecan also consider a boolean predicate δ(goi, goj, d) whichreturns true or false depending whether the distancebetween goi and goj is smaller than a given value d.

5.1.2.3 Direction-based operationsDirection relationships between objects can be

qualitatively described using the notion ofcardinaldirections (Frank, 1991). The object support is abstractedusing its minimum bounding rectangle, and the directionrelationships are expressed through a 3x3 matrixrepresenting true or false values for NORTHWEST,NORTH, NORTHEAST, WEST, CENTER, EAST,SOUTHWEST, SOUTH, and SOUTHEAST relations.Given a pair of geo-objects goi and goj, theDIRECTION(goi, goj) operation returns the cardinaldirection matrix between these two objects. We can alsoconsider a boolean predicate PATH(goi, goj, dir_rel)which returns true or false depending on the directionrelation dir_rel value between goi and goj

5.1.3 Combined Spatial and Attribute BasedOperations

Given a pair of geo-objects goi and goj, this class ofoperation return a value which is calculated on theattribute values of goi, based on the geometrical support ofgoj. We call this types of operation REGION, andconsider specialisations such as REGION_MAX (Ai,goi,

goj) and REGION_AVE(Ai,goi, goj), which compute,respectively, the maximum and the average value of theatttibute Ai of the geo-object goi, constrained by thegeometrical support of the geo-object goj. Figure 8 showsan example of a "region" operation, where the attribute offirst geo-object is a numerical value, and we compute themaximum value of the region indicated by S2.

Again, it should be stressed that some operationsneed a conversion between representations of geo-objects(such as the conversion from a grid to a TIN). In this casethe operation depends on the conversion technique used.

5.2 Composite Operations on Geographical Objects

In this section, we indicate how the usualoperations of spatial queries and map algebra can beexpressed in terms of the atomic operations proposed. Wewill consider three such types of operations: spatialselection, spatial join and point operations (which usuallyare implemented in separate systems).

Definition 1. Spatial Selection.

The spatial selection operation can be defined asfollows. Given a set of geo-objects GO = {go1,..,gon}, a reference geo-object go*, the spatialselection operation ϕ: GO→GO, given a spatialpredicate ξ which relates the geo-objects go ε GO togo* is defined by:

ϕξ(GO) = { go ε GO | ξ((go, go*)) }.

Figure 8 – Example of a region operation.

Page 51: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

The spatial selection operator is such that the outputis a subset of the original set, composed of all geo-objectsthat satisfy the geometrical predicate, as in the example:“select all regions of France which are adjacent to theMidi-Pyrinees regions (which contains the city ofToulouse)”, illustrated in Figure 9.

Definition 2. Spatial Join.

Let GO1 and GO2 be two sets of geo-objects.Let ξ be a spatial predicate computable for every pairof objects (go1, go2)¸where go1 ε GO1 and go2 εGO2. The spatial join operation θ: GO1 x GO2 →GO1 x GO2 is such that:

θξ (GO1,GO2) = { (go1, go2) ε (GO1, GO2) | ξ(go1, go2 ) }.

Spatial join is an operation where a comparisonbetween two sets of geo-objects GO1 and GO2 takesplace, based on a spatial predicate which is computed overthe geometrical support of these sets. The name “spatialjoin” is employed by analogy to the join operation inrelational algebra. The result of the spatial join operationis a set of object-pairs, which satisfy the spatial restriction.One example of spatial join would be: “Find all nativereservations located closer than 50 km to the main roads inAmazonia”. The answer is a set of pairs of geo-objects(reservation, road).We can also consider operations wherean ouput is generated, based on one or more inputs.

Definition 3. Point operations.

Let go1, go2, .. gon be geo-objects used as input,gon+1 be the output geo-object, A1, A2,...,An+1 be theattribute sets associated to these geo-objects and So

be the geometric support of the output. Let Aik be the

i-th attribute of the k-th geo-object. The pointoperation Π: So x Ai

1 x Aj2 x Al

n → Ai

n+1 induces afunction π such that:

fn+1(p) = π (f1(λ,Ai1), ..., fn(λ,Al

n)), ∀ p ε S.

For point operations, the value of the output attributeat each location is a function only of the input attribute

values at the corresponding location. One example wouldbe the boolean operations: “Calculate a soil aptitude mapbased on climate, soil, and slope maps, where theconditions are such that a soil is deemed “good foragriculture” if it rains more that 1000 m/yearand the soilhas a ph between 6.5 and 7.5, and the slope is less than15%”. This operation can be easily defined, based on theproposed atomic operations VALUE and ASSIGN (definedin section 5.1.1).

Other operations on geo-objects can be defined in asimilar fashion. Note that the above definitions make noexplicit assumption on the specific type of geo-objectconsidered. In current systems, the first two operations arewhich usually implemented in a separate sub-system thanthe third one. As we have argued, there is no compellingreason that this should be the case, and that the atomicoperations proposed in section 5.1 should be generalenough to serve as a basis for an interoperable languagefor geographical data.

6 CONCLUSIONS AND FUTURE WORK

In this paper, we have presented a genericdefinition for geographical objects. From this definition,we obtained different types of geographical entities andformulated a minimal set of general GIS operations. Wehave shown that this minimal set can be used to buildmore complex operations, equivalent to usual definitionsof spatial selections and map algebra, but which are notconstrained to any particular model of geographical data(such as the field or object models).

We point out that a unified formal definition ofgeographical objects does not, in any respect, diminish therelevance of the conceptual debate at the semantic level.The field and object views are, in fact, based on deeplyrooted notions in human perception of his environment.Our primary aim was to indicate that the computerizedmodelling of the geographical data is necessarily areductionist view, leading to formal notions whichprovides a basis for unified semantics of GIS operations.

We should point out that the concept of ageographical object introduced allows for new categoriesof geo-objects whose geometric support are not defined asa subset of the plane. This makes it very suitable to define,for instance, a concept of a volumetric geographical objectwhich seems to be quite adequate to bring volumetricvisualization techniques into the realm of GIS systems.More generally, GIS systems will incorporate more andmore multimidia techniques. The concept of geographicalobject is ready to absorb this tendency. We intend todiscuss these issues in our future work.

Figure 9 – Example of spatial selection operation

Page 52: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

7 ACKNOWLEDGEMENTS

This work has been partially motivated as part of theeffort on the development of SPRING, a GIS built byINPE and its partners. In particular, the first author wouldlike to thank his colleagues on the SPRING project,especially Ubirajara Freitas and Ricardo Cartaxo, formany a fruitful discussion on the topic of GIS modelling.This work has been partially financed by a jointNSF/CNPq project on "Interoperabilty on GIS" (processCNPq 480322/99).

8 REFERENCES

Burrough, P.A.; Frank, A. Concepts and Paradigms inSpatial Information: Are current geographicalinformation systems truly generic ?. InternationalJournal of Geographic Information Systems,9(2):101-116, 1995.

Burrough, P.A.; Frank, A. (eds). Geographic Objects withIndeterminate Boundaries. London, Taylor andFrancis, 1996.

Couclelis, H. Towards an Operational Typology ofGeographical Entities with Ill-defined Boundaries. In:Burrough, P.A.; Frank, A. (eds). Geographic Objectswith Indeterminate Boundaries, chap3, pp. 45-56.London, Taylor and Francis, 1996.

Câmara, G.; Souza, R.C.M.; Freitas, U.M.; Garrido, J.C.P(1996). “SPRING: Integrating Remote Sensing andGIS with Object-Oriented Data Modelling”.Computers and Graphics, vol.15 , n.6, July 1996.

Câmara, G.; Thomé, R.; Freitas, U.; Monteiro, A.M.V."Interoperability In Practice: Problems in SemanticConversion from Current Technology to OpenGIS".2nd International Conference for Interoperability andGeographic Information Systems. Zürich, Switzerland,March 10-12, 1999.

Câmara, G.; Souza, R.C.M.; Monteiro, A.V.M.; Paiva,J.A.C. “Action-Driven Ontologies of the GeographicalSpace: Beyond the Field-Object Debate”. Submitted toGISccience Conference, 2000.

Clementini, E.; Di Felice, P.; Van Oosterom, P. A SmallSet of Formal Topological Relationships Suitable forEnd-User Interaction. In: Proc. of Third InternationalSymposium on Spatial Data Handling (Singapore,1993), pp. 277-295.

Egenhofer, M. Spatial SQL: A Query and PresentationLanguage. IEEE Transactions on Knowledge and DataEngineering, 6:86-95, 1994.

Egenhofer, M.; Mark, D.; Herring, J. The 9-Intersection:Formalism and its Use for Natural Language SpatialPredicates. NCGIA Technical Report 94-1, May 1994.

ESRI. Arc/Info Data Management Concepts, data models,database design, and storage. Redlands, CA,Environmental Systems Research Institute, 1994.

Gomes, J.M.; Velho, L. Abstraction Paradigms forComputer Graphics. The Visual Computer,11:227-239,1995.

Gomes, J.; Costa, B.; Darsa, L.; Velho, L. GraphicalObjects. The Visual Computer, 12(6):269-282, 1996

Gomes, J.; Costa, B.; Darsa, L.; Velho, L. Warping andMorphing of Graphical Objects. Morgan KaufmanPublishers, San Francisco, , 1998

Güting, R.H. An Introduction to Spatial Database Systems.VLDB Journal, 3(4), October 1994.

OGC - OpenGIS Consortium. Topic 5: The OpenGISFeature, 1998a..

OGC - OpenGIS Consortium. Topic 6: The CoverageType and Its Subtypes, 1998b..

Smith, B.; Mark,D., 1998. Ontology and GeographicKinds. In: T.Peucker and N.Chrisman (eds),International Symposium on Spatial Data Handling.Vancouver, Canada, pg. 308-320.

Tomlin, D. Geographic information systems andCartographic Modeling. Prentice Hall, New York,1990

Page 53: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Ontologias e Interoperabilidade Semântica entre SIGs

FREDERICO FONSECA12

MAX EGENHOFER1

KARLA A. V. BORGES2

1National Center for Geographic Information and AnalysisDepartment of Spatial Information Science and Engineering

University of Maine, Orono, ME 04469-5711, USA{fred,max}@spatial.maine.edu

2 Prodabel - Empresa de Informática e Informação do Município de Belo HorizonteAv. Presidente Carlos Luz, 1275

31230-000 - Belo Horizonte - MG - [email protected]

Abstract. The complexity and richness of geospatial data and the difficulty of their representation createspecific problems for geographic information systems interoperability. This paper proposes the creation ofsoftware components from ontologies as a way to integrate geographic information. These softwarecomponents are derived from ontologies using an object-oriented mapping. The translation of ontologies intoactive information system components leads to ontology-driven geographic information systems. Theapproach introduced by this work enables the use of the architecture by users developing new applications andby GIS database designers. The results presented here answer many questions presented in past works thatdealt with the quest for a new GIS. The proposed architecture is up to date with requirements of moderninformation systems that should provide interoperability and move from managing data and information tomanaging knowledge.

Resumo. A complexidade e riqueza das informações geográficas e a dificuldade de sua representação criaproblemas específicos na tentativa de sua integração. Este trabalho apresenta a estrutura de um Sistema deInformação Geográfico baseado em ontologias, que são o principal componente neste tipo de sistema. Ummapeamento baseado em orientação a objetos é usado para criar classes a partir das ontologias. Estaabordagem proporciona um alto grau de interoperabilidade, permitindo integração parcial de informações,quando a integração completa não é possível. Este sistema permite ainda o reaproveitamento de classes jádesenvolvidas incorporando, assim, nos novos sistemas, o conhecimento existente em outros SIGs. Osresultados deste trabalho respondem a muitas das questões apresentadas em trabalhos relacionados a novageração de SIGs. A estrutura apresentada permite a resolução da interoperabilidade semântica, uma dascaracterísticas dos modernos sistemas de informação.

1 Introdução

Hoje em dia existe uma enorme quantidade de dadosrelativos ao planeta Terra. Estes dados vêm, não só denovos sistemas de informação geográficos (SIG), mastambém de satélites novos e cada vez mais sofisticados. Aomesmo tempo, a expansão da rede mundial decomputadores e o aparecimento de novos domínios deaplicações introduziram mudanças importantes nodesenvolvimento de sistemas de computação. Os sistemasmodernos são distribuídos e altamente heterogêneos. Istotudo leva a novos desafios com relação à pesquisa em SIG.Um deles é a integração de diferentes tipos de informação,não apenas com relação ao conteúdo, mas também comrelação a sua própria natureza como é o caso de

informações geográficas e informações alfanuméricas emgeral.

Interoperabilidade é capacidade que um sistemapossui de compartilhar e trocar informações e aplicações(Bishr 1997). De acordo com Sheth (1999), a nova geraçãode sistemas de informação deverá ser capaz de resolver ainteroperabilidade semântica, na qual um fato pode termais que uma descrição, para poder fazer um bom uso dasinformações disponíveis com a chegada da Internet e dacomputação distribuída. Estes sistemas deverão sercapazes de entender o modelo que o usuário faz do mundoe seus significados e entender também os modelos por trásdas fontes de informação. Sheth (1999) acredita que o usode mediadores (Wiederhold 1998) é a solução para ligaçãoentre o usuário e estas fontes de informação.

Page 54: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Ontologia é uma antiga disciplina que vem desde oestudo feito por Aristóteles sobre as categorias e ametafísica, é a ciência que estuda o ser e suaspropriedades. Para a comunidade de InteligênciaArtificial, ontologias são teorias que especificam umvocabulário relativo a um certo domínio. Este vocabuláriodefine entidades, classes, propriedades, predicados efunções e as relações entre estes componentes. Umaanálise detalhada do uso de ontologias como suporte àinteroperabilidade pode ser encontrada em Wiederhold &Jannink (1999) e Mena et al. (1998). Ontologias têm umpapel chave na resolução da interoperabilidade semânticaentre SIGs (Wiederhold 1994). Sheth (1999) acrescentaque além de ontologias, o uso do contexto também éfundamental nesta solução. Ele afirma também que apesquisa sobre a nova geração de sistemas de informaçãodeve se concentrar, a princípio, em domínios específicos,como os SIGs, e depois então desenvolver arquiteturasmais gerais.

A pesquisa sobre a nova geração de SIGs apesar defreqüentemente estar focada em interoperabilidade(Câmara 1995; Kottman 1999; Sondheim et al. 1999), temtambém observado outras áreas. Couclelis (1992) eEgenhofer & Mark (1995) argumentam em favor de umnovo SIG que supere as limitações da geometriaeuclidiana. Pissinou et al. (1993) acreditam, que entre osrumos que a nova geração de SIGs deve tomar, estão o usode orientação a objetos e Inteligência Artificial. Worboys(1995) descreve áreas em que a ciência da computação temuma participação fundamental na especificação de umanova geração de sistemas de informação e considera queSIGs com capacidade de lidar com objetos em 3 dimensõese SIGs baseados em sistemas de conhecimento fazem partedesta geração. Egenhofer & Mark (1995) introduzem a“Geografia do Cotidiano”, uma disciplina que estuda amaneira como as pessoas raciocinam sobre o espaçogeográfico e o tempo, considerando que os futuros SIGsterão como base esta geografia.

Este trabalho aborda a questão da integração deinformações geográficas e apresenta uma proposta parauma arquitetura de sistemas de informação geográficosbaseados em ontologias. A arquitetura é baseada no uso deontologias representadas formalmente e na sua traduçãopara componentes de software. Esta tradução é feitaatravés do uso de técnicas de orientação a objetos. Oresultado deste trabalho responde diversas questõesapresentadas em trabalhos relacionados à nova geração deSIGs. A estrutura apresentada permite a resolução dainteroperabilidade semântica, uma das características dosmodernos sistemas de informação.

O restante deste artigo é organizado da seguintemaneira: a seção 2 faz uma revisão do uso de ontologiasem sistemas de informação. A seção 3 apresenta um SIGbaseado em ontologias. A seção 4 mostra os tipos declasses disponíveis no sistema e como é feita a navegaçãoatravés da hierarquia de classes. A seção 5 apresentaconclusões e direções futuras deste trabalho.

2 Ontologias e Sistemas de Informação

Os motivos para se usar ontologias em sistemas deinformação geográficos são discutidos em Smith & Mark(1998) e Frank (1997). Smith & Mark (1998) consideramque uma ontologia do mundo geográfico pode:

• ajudar a entender como diferentes comunidadescompartilham informações;

• ajudar a descobrir certas distorções presentes nosprocessos cognitivos de apreensão do mundogeográfico;

• fornecer padrões para o desenvolvimento de SIGs.

Além disto, o uso de ontologias no desenvolvimentode SIGs permite estabelecer correspondências e relaçõesentre os diferentes domínios de entidades espaciais.

Frank (1997) acredita que o uso de ontologias nodesenvolvimento de sistemas contribui para uma melhorqualidade do produto final, já que elas podem ajudar aevitar problemas como (1) inconsistências entre ontologiasimplícitas em SIGs, (2) conflitos entre conceitosontológicos e implementação e (3) conflitos entreontologia do senso comum e conceitos matemáticosembutidos no software.

Kuhn (1993) acredita que ontologias podem levar os SIGsa superar a metáfora de mapas, que apresenta o mundocomo camadas superpostas e independentes. Os problemasdo uso da metáfora de mapas na construção de SIGs foramapontados em Nunes (1991) e Frank (1984).

2.1 Sistemas de Informação baseados em Ontologias

Filósofos e engenheiros de software têm pontos de vistadiferentes sobre ontologias. Guarino (1998) apresenta adiferença entre ontologia no sentido filosófico e namaneira como o termo é usado pela comunidade deInteligência Artificial. Para a engenharia de software,ontologia descreve uma certa realidade com umvocabulário específico, usando um conjunto de premissasde acordo com o sentido intencional das palavras dovocabulário. No sentido filosófico, ontologia é um sistemaespecífico de categorias que reflete uma visão específica domundo. Gruber (1992) define uma ontologia como umaespecificação explícita de uma conceituação. Guarino(1998) revê e amplia esta definição: uma ontologia é uma

Page 55: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

teoria lógica que corresponde ao significado intencional deum vocabulário formal, ou seja, um comprometimentoontológico com uma conceituação específica do mundo. Osmodelos intencionais de uma linguagem lógica usando estevocabulário são controlados por seu comprometimentoontológico. Este comprometimento e a conceituaçãosubentendida são refletidas na ontologia pela aproximaçãodesses modelos intencionais.

Desta forma, podemos dizer que para o engenheiro desoftware existem diversas ontologias, enquanto que para ofilósofo existe apenas uma, a Ontologia, com letramaiúscula. Para resolver esta questão, Smith (1998) sugereuma distinção terminológica entre uma ontologia baseadana realidade (ontologia-R) e uma ontologia epistemológica(ontologia-E). Ontologia-R é uma teoria que explica comoo universo é organizado e corresponde ao mundo dosfilósofos. Uma ontologia-E serve aos propósitos dosengenheiros de software e pode ser definida como umateoria que explica como um indivíduo, grupo, linguagemou ciência entende um determinado domínio.

2.2 Classificação de Ontologias

Guarino (1997) classifica as ontologias de acordo com suadependência em relação a uma tarefa específica ou a umponto de vista:

• Ontologias de Alto Nível: descrevem conceitos bemgerais. Em relação aos SIGs, estas ontologiasdescreveriam os conceitos básicos do espaço. Umateoria descrevendo partes e todos, e suas relação com atopologia, chamada mereologia (Smith 1995), estarianeste nível;

• Ontologias de Domínio: descrevem um vocabuláriorelacionado a um domínio genérico. No caso de SIGs,poderia ser, por exemplo, uma descrição dos fatos eentidades relacionados a sensoriamento remoto ou aoambiente urbano;

• Ontologias de Tarefas: descrevem uma tarefa ou umaatividade, como interpretação de imagens ou avaliaçãode poluição sonora em ambientes urbanos;

• Ontologias de Aplicação: descrevem conceitos quedependem tanto de um domínio específico como deuma tarefa específica, e geralmente são umaespecialização de ambos. Em nossa proposta, estasontologias são criadas a partir da combinação deontologias de níveis superiores. Elas representam asnecessidades dos usuários com relação a umaaplicação específica, como, por exemplo, a avaliaçãoda disponibilidade de camarões na costa do EspíritoSanto.

Outra distinção que Guarino (1998) faz é entreontologias refinadas e não-refinadas, ou ainda, off-line e

on-line. Uma ontologia não-refinada tem um númeromínimo de axiomas e seu objetivo é ser compartilhada porusuários que concordem sobre uma determinada visão demundo. Uma ontologia refinada precisa de uma linguagemde alta expressividade e tem um grande número deaxiomas. Ontologias não-refinadas têm mais chance de sercompartilhadas e deveriam ser usadas on-line para darsuporte à funcionalidade de sistemas de informação. Já asontologias refinadas deveriam ser usadas off-line esomente para referência. A solução proposta aquiapresenta um modelo de navegação embutido nas classesbásicas do sistema. Este modelo permite a transformaçãode objetos de uma classe para outra, sejam de classespertencentes a ontologias refinadas para não-refinadas ouvice-versa. Este sistema de navegação esta descrito emFonseca (1999) e permite que a distância entre as duassoluções sugeridas em Guarino (1998) seja diminuída.

3 SIGs baseados em Ontologias

O uso de ontologias explícitas no desenvolvimento e usode sistemas de informação leva ao que são chamados deSistemas de Informação baseados em ontologias (Guarino1998). Em nossa proposta de um SIG baseado emontologias, as ontologias são representadas em umaestrutura formal baseada em Rodriguez (2000), quedescreve ontologias através seus componentes: partes,funções e atributos. Esta estrutura considera mais arobustez da implementação (Guarino et al. 1999), já quenão é direcionada a ser usada em sistemas deduçãoautomática e sim para extração e manipulação deinformações. Em Cranefield (1999) pode ser encontradauma discussão completa sobre as formas dearmazenamento de ontologias de acordo com o usopretendido. As ontologias são organizadas em umaestrutura hierárquica, já que está é considerada uma dasmelhores formas de se representar o mundo geográfico(Smith 1995; Harvey et al. 1999). O mapeamento dasentidades presentes nas ontologias para componentes desoftware é feito usando-se técnicas de orientação a objeto eherança múltipla. Este tipo de mapeamento permiteintegração parcial de informações quando uma integraçãocompleta não é possível. Este sistema permite ainda oreaproveitamento de classes já desenvolvidas,incorporando, assim, nos novos sistemas, o conhecimentoexistente em outros SIGs.

Um SIG baseado em ontologias é composto por umeditor de ontologias, por um servidor de ontologias, porontologias especificadas formalmente e por classesderivadas de ontologias. A especificação de ontologias éfeita através do uso de um editor de ontologias. Umsistema para editar, folhear, traduzir e reutilizar ontologiasé o Ontolíngua (Gruber 1992). O sistema Ontolíngua

Page 56: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

permite que a edição de ontologias seja feita por grupos deespecialistas trabalhando simultaneamente. As ontologiaspodem ser traduzidas para linguagens como CORBAInterface Definition Language (IDL) (OMG 1991), Prolog(Clocksin and Mellish 1981), Epikit e KIF (Genesereth1990). Em nossa proposta será usado um novo editor deontologias, já que optamos por traduzir e implementar asclasses derivadas das ontologias em Java, opção que nãoesta disponível no sistema Ontolíngua. O editor a serimplementado também será capaz de ler e escreverontologias em XOL (Karp et al. 1999), uma linguagemque foi criada para o facilitar o compartilhamento deontologias e é baseada em Extensible Markup Language(XML) (Graham and Quin 1999).

Já que está sendo utilizada uma abordagem orientadaa objetos na especificação das ontologias, é possíveltraduzir as classes para uma linguagem de computaçãoorientada a objetos. Nós optamos por fazer a tradução parainterfaces em Java. Uma interface em Java descreve umconjunto de métodos públicos que deverão serimplementados por classes em Java. Então, uma interfacenão é uma implementação. O mecanismo paraimplementação de herança múltipla em Java através douso de Interfaces para um SIG baseado em ontologias estádescrito em Fonseca et al. (2000b).

O resultado do processo inicial de uso de um SIGbaseado em ontologias é um conjunto de ontologiasespecificadas formalmente e um conjunto de classes.Podemos chamar este processo inicial de geração deconhecimento (Figura 1). As ontologias são administradaspor um servidor de ontologias. Este servidor permite ofolheamento de ontologias, assim, colocando à disposiçãode usuários, os metadados referentes às informaçõesdisponíveis. O servidor de ontologias também contemapontadores para sistemas de informação geográficos. Acomunicação entre o servidor de ontologias e os SIGs éfeita através de mediadores. Estes mediadores sãoresponsáveis por extrair as informações dos SIGs e criar asinstâncias das classes. Estas classes são um ponto chaveem nossa proposta. Elas vão conter as informaçõesextraídas dos SIGs e o conhecimento extraído dasontologias.

Editor deOntologias

Ontologias

Tradutor deOntologias

Especialistas

Classes

Usuários

Folheador deOntologias

Folheador deClasses

Desenvolvedores de Aplicações

Desenvolvedores de Classes

Geração deConhecimento

Uso deConhecimento

Aplicaçõesem SIGs

Figura 1 Esquema de um SIG baseado emOntologias.

4 Classes e Navegação

Sistemas de informação geográficos baseados emontologias são criados através do uso de classes extraídasde diversas ontologias. Estas classes são usadas como basepara o desenvolvimento de novas aplicações. Desta forma,o conhecimento acumulado por especialistas pode serreutilizado por diversos usuários. Considere, por exemplo,o caso de um usuário que precisa modelar uma classe paralidar com um objeto geográfico que tenha limitesimprecisos. Este é um problema difícil, mas que éencontrado em diversas aplicações de SIGs. Uma ontologiaque tenha estabelecido os tipos de limites existentes emobjetos geográficos, e como eles devem ser tratados emtermos de operações e características, pode ser usada nestecaso. O usuário pode reaproveitar o conhecimento deespecialistas e implementar seu objeto geográfico baseadonesta classe. Na seção 4.1 mostramos os dois tipos declasse presentes num ambiente de sistemas de informaçãogeográficos baseados em ontologias. Na seção 4.2introduzimos o modelo de navegação proposto.

4.1 Classes de Usuário e Classes de Ontologias

O desenvolvimento de aplicações usando-se classesderivadas de ontologias é feito criando-se o que chamamosde Classes de Usuário em oposição a Classes deOntologias que são as classes logo após a tradução.Classes de Usuário são criadas através da combinação deClasses de Ontologias através do uso de herança múltipla.Classes de Usuário são muito mais específicas do que asClasses de Ontologia que são mais genéricas. Classes deUsuário pertencem ao nível Ontologias de Aplicaçãoenquanto que Classes de Ontologia pertencem ao nível deOntologias de Alto Nível, Ontologias de Domínio e

Page 57: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Ontologias de Tarefas (Guarino 1998). Na arquiteturaproposta existem diferentes níveis de ontologias. O nívelde detalhe da informação extraída é correspondente aosníveis das ontologias. Ontologias de Alto Nível são maisgerais e têm menos detalhes enquanto o contrário ocorrenas demais ontologias. As ontologias dos níveis maisbaixos são criadas a partir de refinamentos das definiçõesdas ontologias dos níveis superiores. Assim cada novonível de ontologias incorpora o conhecimento do nívelsuperior (Figura 2).

Ontologiade AltoNível

Ontologiade

Domínio

Ontologiade

Tarefas

Ontologiade

Aplicação

Classes deOntologia

Classes deUsuário

InterfacesJava

ClassesJava

Nivel deDetalhe

-

+Figura 2 Níveis de Ontologias e Classes, estendido a

partir de Guarino (1998).

4.2 Navegação

Em geral, as Classes de Usuário são derivadas de mais deuma entidade das ontologias. Então é necessário ter ummecanismo para implementar herança múltipla. Nósescolhemos implementar as classes usando vários papéis.Cada classe pai corresponde a um papel que o objeto poderepresentar. O modelo para implementar objetos querepresentam diversos papéis foi sugerido em Pernici(1990). Por exemplo, uma instância da classe lote pode servista como um lote ou um polígono. Embora uma instânciade uma classe possa ser vista através de múltiplasinterfaces, múltiplos papéis, ela nunca perde suaidentidade. A identidade do objeto é preservada e o que écolocado à disposição do usuário são suas diversasinterfaces.

Nós propomos aqui dois tipos de navegação:generalização/especialização e extração de papéis. Paraimplementar a generalização, um objeto tem de ter acapacidade de gerar a partir de si próprio uma instânciaimediatamente superior deste objeto. Para implementar aespecialização, um objeto tem de ser capaz de gerar umainstância de si próprio a partir de uma instância da classeimediatamente superior. Estes dois métodos têm comoprincipal objetivo: (1) a reutilização de conhecimento e (2)aplicações de operações que de outra maneira não estariamdisponíveis para certas classes. Estas operações tambémpermitem a integração de informações. Isto é feito atravésda navegação até pontos em comum na árvore de

hierarquia.

A extração de papéis é feita para se aplicar operaçõesque estão disponíveis para certas classes. Ela também éusada para a geração de visões. Por exemplo, quando ousuário quer obter uma visão de rede de uma cidade, todosos objetos que têm as entidades nó ou trecho de rede, comoum de seus papéis, fornecem estes papéis para seremexibidos e manipulados.

Um objeto pode ter de se adaptar a várias visões erelacionamentos através de mudanças de classes. Porexemplo, um objeto poligonal que tem de se fundir comum outro objeto que pertence a uma de suas superclasses,tem que se adaptar fazendo o papel desta superclasse.Assim a operação pode ser efetuada usando-se a classesuperior comum a ambos os objetos. Informações nuncasão perdidas em conversões porque elas ocorrem apenasnas representações dos objetos e não em sua formaoriginal. A possibilidade de se usar operações denavegação em uma árvore hierárquica de ontologias comoguia de operações de generalização de dados geográficosfoi sugerida em Fonseca (2000a).

Os objetos geográficos têm de implementar, ou entãoherdar, todos os métodos das classes das quais eles sãoderivados. Já que estamos propondo uma arquitetura deobjetos distribuídos, a implementação dos objetos pode sebasear no uso de serviços externos para a execução de seusmétodos. Por exemplo, quando da implementação de umobjeto setor censitário, um programador tem de escreverum método para o cálculo de população de uma área quecobre diversos setores censitários. Em vez de desenvolvereste método, o programador pode chamar um serviço quetenha uma implementação sofisticada deste cálculo. Doponto de vista do usuário, o método é executadolocalmente, mas na realidade ele é processado usandométodos e serviços localizados em outro servidor.

Assim como em CORBA (OMG 1991) e Java(Gosling and McGilton 1995), onde todas as classes sãoderivadas de uma classe básica, nós propomos aqui quetodas as classes sejam derivadas de uma classe únicachamada Objeto. Esta classe tem dois métodos que sãofundamentais para o sistema, os métodos para cima()e a partir de(). O método para cima() , quandoaplicado a um determinado objeto, retorna um objeto daclasse que deu origem a este objeto. O método a partirde() gera uma instância da própria classe a partir de umainstância de uma classe superior. Estes dois métodosproporcionam a navegação por toda a árvore de ontologias.

Consideremos o seguinte exemplo em que duasclasses são derivadas da Classe Setor_Censitário:Setor_Censitário_A e Setor_Censitário_B

Page 58: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

(Figura 3). O usuário quer usar a operação cálculo depopulação em Setor_Censitário_A. Mas a operaçãosó está disponível em Setor_Censitário_B. Então énecessário que: (1) Setor_Censitário_A gere umainstância de Setor_Censitário usando paracima(); (2) Setor_Censitário_B gere umainstância de si mesmo a partir da instância deSetor_Censitário gerada na operação anterior; (3)a operação é aplicada na nova instância deSetor_Censitário_B e o resultado estará disponívelpara o usuário em uma instância deSetor_Censitário_B. O processo inverso poderia seraplicado para se gerar uma instância deSetor_Censitário_A.

SetorCensitario

SetorCensitário

SetorCensitario B

SetorCensitario A

Paracima()

A partirde()

SetorCensitario B

SetorCensitárioA

SetorCensitárioB

Figura 3: Navegação

5 Conclusões

Este trabalho apresentou uma proposta de um sistema deinformação geográfico baseado em ontologias. Estasontologias são especificadas formalmente e podem sertraduzidas em componentes de software. Estescomponentes podem ser usados no desenvolvimento deaplicações geográficas e também na troca de informações.Foi proposta uma estrutura hierárquica para representaçãodas ontologias. A tradução é feita através do uso detécnicas de orientação a objeto. A estrutura apresentadafunciona como integradora de diversos sistemas deinformação geográficos.

5.1 Resultados Principais

Devido a complexidade do mundo geográfico temos queconviver com diversas visões de mundo (Frank 1997).Assim, é preciso que os desenvolvedores de SIGs tenhamferramentas que permitam a combinação de váriasontologias. A solução apresentada aqui permitiu aformação de classes complexas oriundas de diversas

ontologias. Esta abordagem também possibilitou aintegração de informações parciais, quando a integraçãototal não foi possível. A interoperabilidade semântica foiresolvida através do uso de classes derivadas de ontologias.Toda a manipulação de informações foi feita baseada nasdefinições das entidades geográficas presentes nasontologias.

O uso de orientação a objetos na tradução deontologias em classes levou a uma estrutura hierárquicarepresentando o mundo geográfico. O sistema denavegação fez uso desta estrutura e permitiu a geração denovas instâncias classes mais ou menos detalhadas. Estasinstâncias permitiram o compartilhamento de informaçõesgeográficas e também a reutilização de conhecimento. Ocompartilhamento pôde ser parcial quando não foi possívelum compartilhamento integral.

A possibilidade de se ter diversas visões do mesmoobjeto geográfico através do destaque dos papéis que umobjeto pode desempenhar atendeu a alguns dos requisitosbásicos de um usuário de um sistema de informaçãogeográfico (Laurini and Thompson 1992).

5.2 Direções Futuras

A estrutura comercial atual da Internet é bem diferente dado passado. Um dos modelos que está se estabelecendo é aoferta de serviços básicos gratuitos ao lado da cobrança porserviços mais sofisticados. Este interesse em captar novosconsumidores pode ser o passo inicial para sistemasbaseados em ontologias. Ontologia mais genéricas podemser oferecidas gratuitamente enquanto ontologias maisdetalhadas seriam cobradas. Outro papel que os provedoresde serviços podem ter é o de integradores de informação.Um dos pontos mais importantes em sistemas deinformação geográficos baseados em ontologias é ageração das instâncias das classes. É preciso conhecer afonte das informações e, ao mesmo tempo, é preciso terconhecimento das ontologias. Esta ligação é importante edelicada. Provedores de informação podem fazer esteserviço para ter o direito de comercializar grandes bases dedados. Por exemplo, importantes bases de dadospertencentes a governos municipais poderiam estardisponíveis ao público em geral, e não estão apenas porfalta de uma estrutura eficiente de acesso. Desta forma,uma das futuras direções desta pesquisa é analisar o papeldestes provedores de serviços e informações como portaisde entrada dos usuários do tipo de sistema apresentadoaqui.

6 Agradecimentos

Este trabalho de Frederico Fonseca foi desenvolvido comfinanciamento de National Science Foundation, projetos

Page 59: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

NSF SBR-9700465 e IIS-9970123, uma bolsa daNASA/EPSCoR número 99-58 e uma bolsa da ESRI.Além disto, a pesquisa de Max Egenhofer é financiadapelos projetos NSF IRI-9613646, BDI-9723873, e EIA-9876707; por National Imagery and Mapping Agencyprojeto número NMA202-97-1-1023; por NationalInstitute of Environmental Health Sciences, NIH, projetonúmero 1 R 01 ES09816-01 e por um contrato comLockheed Martin.

Referências

Bishr, Y. (1997) Semantic Aspect of Interoperable GIS.Ph.D. Thesis, Wageningen Agricultural University, TheNetherlands.

Câmara, G. (1995) Modelos, Linguagens e Arquiteturaspara Bancos de Dados Geográficos. Ph.D. Thesis,Instituto Nacional de Pesquisas Espaciais (INPE), São Josédos Campos, SP.

Clocksin, W. and Mellish, C. (1981) Programming inProlog. Springer-Verlag, New York.

Couclelis, H. (1992) People Manipulate Objects (butCultivate Fields): Beyond the Raster-Vector Debate inGIS. in: A. U. Frank, I. Campari, and U. Formentini,(Eds.), Theories and Methods of Spatio-TemporalReasoning in Geographic Space. Lecture Notes inComputer Science 639, pp. 65-77, Springer-Verlag, Pisa.

Cranefield, S. and Purvis, M. (1999) UML as an OntologyModelling Language. in: D. Fensel, (Ed.) Workshop onIntelligent Information Integration, 16th InternationalJoint Conference on Artificial Intelligence, Stockholm.

Egenhofer, M. and Mark, D. (1995) Naive Geography. in:A. Frank and W. Kuhn, (Eds.), Spatial InformationTheory—A Theoretical Basis for GIS, InternationalConference COSIT '95, Semmering, Austria. LectureNotes in Computer Science 988, pp. 1-15, Springer-Verlag, Berlin.

Fonseca, F. and Egenhofer, M. (1999) Ontology-DrivenGeographic Information Systems. in: C. B. Medeiros,(Ed.) 7th ACM Symposium on Advances in GeographicInformation Systems, Kansas City, MO, pp. 14-19.

Fonseca, F., Egenhofer, M. and Davis, C. (2000a)Ontology-Driven Information Integration. in: C. Bettiniand A. Montanari, (Eds.), The AAAI-2000 Workshop onSpatial and Temporal Granularity, Austin, TX.

Fonseca, F., Egenhofer, M., Davis, C., and Borges, K.(2000b) Ontologies and Knowledge Sharing in Urban GIS.CEUS - Computer, Environment and Urban Systems24(3): 232-251.

Frank, A. (1984) Computer Assisted Cartography—Graphics or Geometry. in: Journal of SurveyingEngineering. 110, pp. 159-168,

Frank, A. (1997) Spatial Ontology: A Geographical Pointof View. in: O. Stock, (Ed.) Spatial and TemporalReasoning. pp. 135-153, Kluwer Academic Publishers,Dordrecht, The Netherlands.

Genesereth, M. R. (1990) The Epikit Manual. Epistemics,Inc., Palo Alto, CA, Technical Report.

Gosling, J. and McGilton, H. (1995) The Java LanguageEnvironment: a White Paper. Sun Microsystems,Mountain View, CA, Technical Report.

Graham, I. and Quin, L. (1999) XML Specification Guide.John Wiley & Sons, New York.

Gruber, T. (1992) A Translation Approach to PortableOntology Specifications. Knowledge Systems Laboratory -Stanford University, Stanford, CA, Technical Report KSL92-71.

Guarino, N. (1997) Semantic Matching: FormalOntological Distinctions for Information Organization,Extraction, and Integration. in: M. Pazienza, (Ed.)Information Extraction: A Multidisciplinary Approach toan Emerging Information Technology, InternationalSummer School, SCIE-97, Frascati, Italy, pp. 139-170.

Guarino, N. (1998) Formal Ontology and InformationSystems. in: N. Guarino, (Ed.) Formal Ontology inInformation Systems. pp. 3-15, IOS Press, Amsterdam,Netherlands.

Guarino, N., Masolo, C. and Vetere, G. (1999) OntoSeek:Content-Based Access to the Web. IEEE IntelligentSystems 14(3): 70-80.

Harvey, F., Buttenfield, B. and Lambert, S. (1999)Integrating Geodata Infrastructures from the Ground Up.Photogrammetric Engineering & Remote Sensing 65(11):1287-1291.

Karp, P., Chauhdri, V. and Thomere, J. (1999) XOL: anXML-based Ontology Exchange Language. ArtificialIntelligence Center SRI International, Menlo Park, CA,Technical Report.

Kottman, C. (1999) Introduction: System and Experiences.in: M. Goodchild, M. Egenhofer, R. Fegeas, and C.Kottman, (Eds.), Interoperating Geographic InformationSystems. pp. 215-219, Kluwer Academic Publishers,Norwell, MA.

Kuhn, W. (1993) Metaphors Create Theories for Users. in:A. Frank and I. Campari, (Eds.), Spatial InformationTheory. Lectures Notes in Computer Science 716, pp. 366-376, Springer-Verlag, Berlin.

Laurini, R. and Thompson, D. (1992) Fundamentals ofSpatial Information Systems. Academic Press, London.

Page 60: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Mena, E., Kashyap, V., Illarramendi, A., and Sheth, A.(1998) Domain Specific Ontologies for SemanticInformation Brokering on the Global InformationInfrastructure. in: N. Guarino, (Ed.) Formal Ontology inInformation Systems. pp. 269-283, IOS Press, Amsterdam.

Nunes, J. (1991) Geographic Space as a Set of ConcreteGeographical Entities. in: D. Mark and A. Frank, (Eds.),Cognitive and Linguistic Aspects of Geographic Space.pp. 9-33, Kluwer Academic Publishers, Norwell, MA.

OMG, Ed. (1991) The Common Object Request Broker:Architecture and Specification, Revision1.1. OMGDocument No. 91.12.1 Framingham, MA.

Pernici, B. (1990) Objects with Roles. in: IEEE/ACMConference on Office Information Systems, , pp. 205-215.

Pissinou, N., Makki, K. and Park, E. (1993) Towards theDesign and Development of a New Architecture forGeographic Information Systems. in: B. K. Bhargava, T.W. Finin, and Y. Yesha, (Eds.), Second InternationalConference on Information and Knowledge Management,Washington, DC, USA, pp. 565-573.

Rodriguez, A. (2000) Assessing Semantic Similarityamong Spatial Entity Classes. University of Maine, Orono.

Sheth, A. (1999) Changing Focus on Interoperability inInformation Systems: from System, Syntax, structure toSemantics. in: M. Goodchild, M. Egenhofer, R. Fegeas,and C. Kottman, (Eds.), Interoperating GeographicInformation Systems. pp. 5-29, Kluwer AcademicPublishers, Norwell, MA.

Smith, B. (1995) On Drawing Lines on a Map. in: A.Frank and W. Kuhn, (Eds.), Spatial Information Theory—A Theoretical Basis for GIS, International ConferenceCOSIT '95, Semmering, Austria. Lecture Notes inComputer Science 988, pp. 475-484, Springer Verlag,Berlin.

Smith, B. (1998) An Introduction to Ontology. in: D.Peuquet, B. Smith, and B. Brogaard, (Eds.), The Ontologyof Fields. pp. 10-14, NCGIA, Bar Harbor, ME.

Smith, B. and Mark, D. (1998) Ontology and GeographicKinds. in: International Symposium on Spatial DataHandling, Vancouver, Canada, pp. 308-320.

Sondheim, M., Gardels, K. and Buehler, K. (1999) GISInteroperability. in: P. Longley, M. Goodchild, D.Maguire, and D. Rhind, (Eds.), Geographical InformationSystems. 1 Principles and Technical Issues, John Wiley &Sons, INC, New York.

Wiederhold, G. (1994) Interoperation, Mediation andOntologies. in: International Symposium on FifthGeneration Computer Systems (FGCS94), Tokyo, Japan,pp. 33-48.

Wiederhold, G. (1998) Value-added Middleware:Mediators. Stanford University, Technical Report.

Wiederhold, G. and Jannink, J. (1999) Composing DiverseOntologies. in: 8th Working Conference on DatabaseSemantics (DS-8), Rotorua, New Zealand.

Worboys, M. F. (1995) GIS - A Computing Perspective.Taylor & Francis Inc., Bristol, PA.

Page 61: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Trading e Agentes em Sistemas de Informações Geográficas Distribuídos

SÔNIA VIRGÍNIA ALVES FRANÇA1

CARLOS ANDRÉ GUIMARÃES FERRAZ2

1UNIT-Universidade Tiradentes - Av. Dr. José T. D. Nabuco, 300, 49030-270, Aracaju, [email protected]

2 UFPE/Centro de Informática - Caixa Postal 7851, 50732-970, Recife, [email protected]

Resumo: Este trabalho descreve um modelo que possibilita que Sistemas de Informações Geográficasheterogêneos, distribuídos em redes de longas distâncias se comuniquem, interoperando dados e serviços. Omodelo baseia-se nas tecnologias de objetos distribuídos e agentes e no padrão OGIS, definindo os conceitos deGIS Trader e Geoagentes como componentes que tornam possível a interoperabilidade entre aplicações degeoprocessamento, bem como contribuem para um bom desempenho quando essas aplicações se encontramdistribuídas em redes heterogêneas e de longa distância.

Abstract: This paper describes a model that allows heterogeneous Geographic Information Systems,distributed over wide area networks to communicate with each other, interoperating data and services. Themodel is based on distributed objects and agents technologies and on the OGIS standard, defining the conceptsof GISTrader and Geoagents as components that enable interoperability between geoprocessing applications, aswell as contribute to good performance when such applications are distributed over heterogeneous and widearea networks.

1 Introdução

Os Sistemas de Informações Geográficas ou SIGs, foramadotados extensamente nas duas últimas décadas paraauxiliar no planejamento urbano, agricultura, transporte emuitos outros campos [5]. No entanto, A maioria dosSIGs são implementados para executar em ambientesfechados, possuindo seu próprio modelo de dados efunções para manipular os mesmos. A troca de dadosentre SIGs heterogêneos é bastante complexa oupraticamente não existe [2, 9, 14]. Para resolver esseproblema são adotados padrões, diminuindo custos etempo de aquisição de dados geográficos. Um dos padrõespara troca de dados geográficos mais difundidoatualmente é o OGIS (Open Geographic InteroperabilitySpecification) [3, 8].

Os SIGs são desenvolvidos, muitas vezes, para umacerta comunidade de usuários, assim eles são equipadoscom um conjunto de funções de interesse dessacomunidade [4]. No entanto, pode ser que o usuárionecessite de uma função que o seu SIG não dispõe, assim,seria interessante que ele pudesse fazer uso de funçõesque estivessem disponíveis em outros SIGs.

Quando esses SIGs se encontram distribuídos emredes heterogêneas e de larga escala, serão necessáriosmecanismos que tornem possível a comunicação entreeles de forma eficaz e eficiente. É importante ressaltar queambientes de geoprocessamento envolvem grandevolumes de dados e um grande problema em ambientes de

larga escala é saber onde encontrar esses dados ou afunção desejada.

O modelo proposto neste trabalho permite quesistemas de informações geográficas distribuídos em redesheterogêneas e de longas distâncias se comuniquem,interoperando dados e serviços, e fornecendo aos usuáriosdesses SIGs, transparência de acesso e de localização,facilidades para buscar a informação através de interfacesbem definidas, simples e claras, bem como tempos deresposta razoáveis, considerando longa distância e dadosgeográficos de grande volume.

2 Modelo Baseado em GIS Trader e AgentesGeográficosO modelo reúne as tecnologias de objetos distribuídos[13], o padrão OGIS e agentes [7, 10, 12] com a finalidadede proporcionar a interoperabilidade entre aplicações degeoprocessamento, bem como garantir um bomdesempenho quando essas aplicações se encontramdistribuídas em redes heterogêneas e de longa distância.

O modelo funciona da seguinte forma: servidorescadastram seus serviços de geoprocessamento em um GIStrader. O GIS trader é responsável por fazer o anúnciodesses serviços. O usuário, através da aplicação SIG, faz arequisição de um serviço que a sua aplicação não possui.A busca e invocação desse serviço é feita pelos

Page 62: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

geoagentes que se comunicam com o GIS trader e com oservidor, obtendo assim o resultado para o usuário[6].

Uma visão macro do modelo é apresentada na figura1, com os seguintes componentes: servidor, GIS trader,geoagentes e aplicação GIS.

6HUYLGRU

6HUYLGRU

6HUYLGRU

&OLHQWH

&OLHQWH

6,*���*HRDJHQWH

6,*���*HRDJHQWH

&OLHQWH

�6,*����*HRDJHQWH

*,67UDGHU

*,67UDGHU

6HUYLGRU

6,*�����'DGRV

6,*�������'DGRV

6,*�������'DGRV

6,*�������'DGRV

Figura 1: Visão do modelo baseado em GIS trader eagentes geográficos.

A comunicação entre os componentes do modelo éfeita via interfaces. As setas numeradas (figura 1)mostram as diferentes interfaces necessárias para acomunicação entre os componentes. A interface 1representa a comunicação da aplicação SIG com ogeoagente; essa interface é necessária quando a aplicaçãodeseja fazer a requisição de um serviço. A interface 2representa a comunicação do geoagente com o GIS trader;o geoagente é responsável por ir buscar o serviçorequisitado pela aplicação. A interface 3 representa acomunicação do geoagente com o servidor; nestemomento o geoagente está fazendo a requisição doserviço. A interface 4 representa a comunicação doservidor com o GIS trader, usada no momento em que oservidor deseja fazer a oferta de um serviço degeoprocessamento. A interface 5 representa acomunicação entre os GIS traders, esta ocorre caso existaa necessidade de uma federação de traders [1, 17] em umsistema de larga escala.

Os componentes do modelo são objetos CORBA [13]que estão distribuídos nas redes, comunicando-se atravésdo protocolo IIOP e sendo gerenciados por ORBs. Aescolha por CORBA se dá pela independência deplataforma e de linguagem, e sua habilidade de tratarproblemas de heterogeneidade. Essas facilidades trazemganhos muito grandes, já que está se tratando deambientes de geoprocessamento que são naturalmenteheterogêneos. Outra vantagem é a facilidade deescalabilidade do sistema, ou seja, novos SIGs podem seradicionados ao modelo a qualquer momento. O serviçotrader [1, 13] oferecido pelo CORBA é adaptado paraatender às necessidades dos usuários de SIGs, surgindoassim o conceito de GIS trader.

A eficiência das buscas em redes de longa distânciapode se dar através dos geoagentes (ou agentesgeográficos, agentes que fazem tarefas voltadas aogeoprocessamento) e do GIS trader. Juntos, irão localizar,buscar e invocar os serviços requisitados pelos usuárioscom mais rapidez, visto que no GIS trader sãocatalogados todos os serviços de geoprocessamentodisponíveis para uma certa comunidade de informação. Osgeoagentes se comunicam com o GIS trader para localizaro serviço requisitado. Se não houvesse o GIS trader, osgeoagentes teriam que buscar o serviço requisitado entretodos os serviços disponíveis na rede.

Nos servidores encontram-se implementações deobjetos CORBA. Quando um novo objeto, que faz umserviço de geoprocessamento, é instanciado, ele pode sercadastrado no GIS trader, para que este faça o anúncio e,assim as aplicações podem fazer uso do serviço. Oservidor é requisitado no momento em que o geoagentefaz a invocação a seus objetos; ele faz o processamento dopedido e envia o resultado para o geoagente.

Nos clientes residem as aplicações/interfaces SIG eos agentes geográficos. As interfaces SIGs são asaplicações que usam os serviços de geoprocessamentodisponíveis na rede. Eles têm o seu próprio modelo dedados e funções para processar esses dados, devem estarde acordo com as especificações do padrão OGIS,tornando possível a interoperabilidade dos dadosgeográficos. Dessa forma, não haverá problemas noformato dos dados que forem trocados entre os diferentesSIGs. Quando um usuário deseja um serviço que a suaaplicação SIG não dispõe, este interage com uma interfacepara fazer o pedido do serviço, informando o tipo doserviço desejado e dados de entrada. Também é atravésdessa interface que o usuário recebe a resposta do seupedido ou a informação de que o pedido não pode seratendido. A transparência de localização ao serviço égarantida por CORBA, portanto a aplicação não sabe ondeé que o serviço solicitado foi encontrado.

Nos próximos tópicos, será detalhado ofuncionamento do GIS trader e dos geoagentes, principaiselementos do modelo.

2.1 GIS Trader

Traders atuam como um broker, possibilitando a clientesencontrar serviços que eles necessitam e anunciamserviços em um ambiente distribuído [1, 11, 13]. Umtrader interage com os servidores (fornecedores deserviço), os clientes (usuários de serviço) e outros traders.O GIS trader será responsável por fazer o anúncio deserviços de geoprocessamento, ou seja, ele faz apenas oanúncio de serviços que são do interesse da comunidadede geoprocessamento à qual ele faz parte. Os exportadores(servidores) cadastram seus serviços de geoprocessamentono GIS trader, para que este faça o anúncio, e osimportadores buscam no GIS trader os serviços ofertados.

Page 63: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Se uma entidade desejar usar um serviço oferecido dentrode uma outra comunidade, interações entre traders serãonecessárias. Estas interações são conhecidas porfederações de traders [17]. Uma federação de GIS trader écriada com o objetivo de aumentar o alcance do usuário,já que este terá acesso a mais serviços.

A figura 2 mostra uma visão detalhada do GIS tradercom os demais componentes e interfaces. Sãoidentificados quatro componentes básicos: importador(geoagente) e exportador de serviços (servidor degeoprocessamento), o GIS trader e o administrador dafederação.

� �

�� ([SRUWD� PRGLILFD� UHPRYH�� /LVWD� SURFXUD� VHOHFLRQD�� ,QYRFDomR GR VHUYLoR�� 5HVXOWDGRV GRV VHUYLoRV

*,6�7UDGHU

&RQWUDWRGH )HGHUDomR

(VWDEHOHFLPHQWRGH )HGHUDomR ,PSRUWDomR ([SRUWDomR

5HSRVLWyULRGH 7LSRV/RFDO

'LUHWyULR�VHUYLoRVRIHUHFLGRV�

$XWHQWLFDGRU$XWHQWLFDGRU

$UPD]HQDPHQWR$UPD]HQDGRU

([SRUWDGRU,PSRUWDGRU

*,6�7UDGHU

$GPLQLVWUDGRUGD )HGHUDomR

*HUHQFLDPHQWRGH 7LSRV $GPLQLVWUDGRU

/RFDO$GPLQLVWUDGRU

/RFDO5HSRVLWyULR7LSRV GH6HUYLoRV

5HSRVLWyULR*,6 WUDGHUV

([HFXWH

)HGHUDomR&RQWURODGRU GH

)HGHUDomR

([HFXWH&RQWURODGRU

Figura 2: Detalhamento dos módulos do GIS trader.

2.1.1 Descrição dos MódulosO GIS trader possui cinco módulos que serão descritos aseguir.

O módulo Armazenador armazena operações quemanipulam a informação correspondente aos tipos deserviços (no Repositório de Tipos Local) e serviçosoferecidos (no Diretório). Por se tratar de um GIS trader,os tipos de serviços ofertados são referentes ageoprocessamento, como mapeamento de uma estrada,topografia de uma área, etc. No Diretório sãoarmazenados todos os serviços ofertados pelo GIS trader.

O módulo Controlador é responsável por executar asoperações locais do GIS trader, tais como: inserir,remover e alterar ofertas de serviços. O móduloControlador de Federação analisa os pedidos que chegamatravés da interface Estabelecimento de Federaçãoconsiderando o contrato de federação e o envia para omódulo Controlador, que irá fazer a busca do pedidofederado. O módulo Controlador de Federação também éusado para informar com quais GIS traders deve serestabelecida a federação.

O Autenticador é o módulo que verifica a permissãodo importador ou exportador para executar uma operação.

Se o exportador desejar fazer a oferta de um serviço quenão seja do interesse do GIS trader, o Autenticadorinforma que o serviço não pode ser cadastrado. Esse é omódulo que traz a diferença entre um trader comum e oGIS trader. Nos traders comuns, podem ser criados ecadastrados qualquer tipo de serviço.

O Administrador Local gerencia a informaçãoarmazenada no GIS trader. É através dele que oAdministrador da Federação informa qualquer mudançanos tipos de serviços, usando a interface Gerenciamentode Tipos.

2.1.2 Administrador da Federação

O Administrador da Federação é um módulo associado eexterno ao GIS trader e tem como principais funções: acriação de novos tipos de serviços e o gerenciamento dafederação de GIS traders. Vale destacar, novamente, queuma federação de trader integra grande número deserviços registrados e negociados, aliviando o trabalho decada trader - como se fossem várias páginas amarelasintegradas [13].

É no Administrador da Federação que são definidosos tipos de serviços de interesse dos usuários dafederação. Os tipos de serviços, juntamente com suadescrição, estão armazenados no Repositório de Tipos deServiços e devem ser especificados pelo Administrador daFederação para que não ocorram problemas de semânticanos nomes dos tipos de serviços. Ou seja, se cada GIStrader criasse os seus próprios tipos de serviços, como éfeito normalmente em traders comuns, poderia ser queeles usassem nomes bastante diferentes para representaruma funcionalidade semelhante, dificultando que certosserviços fossem encontrados, por exemplo: o tipo deserviço “mapeamento” pode ter nomes bem diferentes emoutros GIS traders da federação, como por exemplo:“desenho”, “cartograma”. Quando um tipo de serviço écriado, removido ou alterado, o Administrador daFederação avisa aos GIS traders da federação usando ainterface Gerenciamento de Tipos.

Quando um GIS trader é instanciado, ele deve sercadastrado no Administrador da Federação. Asinformações do GIS trader ficam armazenadas noRepositório de GIS traders. O Administrador daFederação informa quais os tipos de serviços suportadospela federação e um GIS trader, caso exista federação,para que ele se ligue no momento que seja necessário oestabelecimento de federação, usando a interface Contratode Federação. Pode ocorrer que um GIS trader tenhaproblemas e os outros não consigam estabelecer afederação; com isso, o GIS trader que está tentando seintegrar a federação, contata o Administrador daFederação para que este lhe informe um outro GIS traderpara que a federação seja estabelecida.

Page 64: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

2.1.3 Atividades de um GIS Trader

O GIS trader executa duas atividades principais: ocadastramento e o anúncio de serviços degeoprocessamento [6]. A seguir será detalhada cada umadessas atividades.

Cadastramento de serviçosO cadastramento de um serviço é solicitado peloexportador ao GIS trader. Assim, o exportador negociacom o GIS trader, através da interface Exportação.Primeiramente, o GIS trader informa os tipos de serviçossuportados por ele; se o serviço for de um tipo de serviçoexistente, então pode ser cadastrado. O serviço éverificado no módulo Autenticador; se estiver tudocorreto, isto é, o serviço é de um tipo existente no GIStrader, as informações do serviço são passadas para omódulo Execute, que faz o armazenamento no banco dedados de serviços oferecidos. A partir deste momento, oserviço está disponível para os importadores. Oexportador também pode solicitar a remoção e atualizaçãode um serviço.

Anúncio de Serviços

Quando um importador deseja encontrar um serviço degeoprocessamento, este procura um GIS trader, usando ainterface Importação. O importador informa ao GIS tradero tipo de serviço desejado, o qual verifica se possuicadastrado algum serviço que seja do tipo procurado. Se oGIS trader possuir o serviço, ele retorna uma listacontendo todos os serviços encontrados para o importador.A especificação CORBA fornece duas opções deresultados: o trader pode retornar uma lista com todos osserviços encontrados ou escolhe um dos serviços destalista. No GIS trader foi adotada a opção de retornar a listapara que a escolha do serviço fique a critério dogeoagente. Caso o GIS trader não possua o serviço, eleverifica a existência do serviço na federação. O GIStrader de origem (ligado ao importador) inicia anegociação com outros GIS traders a procura do serviçodesejado; para isso é usado o módulo Execute Federaçãoatravés da interface Estabelecimento de Federação. Opedido vai passando trader a trader, na tentativa deencontrar o serviço. O trader que está sendo visitado nomomento conhece a referência do GIS trader de origem;assim, quando o serviço for encontrado, o resultado éenviado diretamente para o GIS trader de origem, quepassa o resultado - referência da interface do objetoprestador do serviço requisitado - para o importador. Se oserviço não for encontrado na federação ou o tempo deconsulta for expirado (timeout), uma exceção é enviadapara o importador.

2.2 Geoagentes - Agentes GeográficosOs geoagentes agem como elemento integrador daaplicação GIS com o restante dos componentes daarquitetura. O que justifica o uso da tecnologia de agentesno presente modelo é que eles trabalham em nome dosusuários integrando-se às aplicações GIS, auxiliando nasbuscas e requisições de serviços abertos degeoprocessamento [15]. A adoção dos agentes diminuirá ainterferência do usuário até que toda a informaçãorequisitada seja recuperada.

Cada aplicação deve possuir seus própriosgeoagentes. A implementação deles está vinculada aomodelo de dados e organização da aplicação, por um lado,e ao modelo OGIS, por outro, para garantir aheterogeneidade e abertura do sistema.

No atual modelo existem dois tipos de geoagentesdiferentes: geoagente de importação e geoagente decomposição, que se comunicam entre si para responder àsnecessidades dos usuários [6]. Os geoagentes conhecem omodelo de dados da aplicação e atuam comointermediadores. Os geoagentes de importação secomunicam com o GIS trader a procura do serviçodesejado, e assim que o encontra, repassam sua referênciapara os geoagentes de composição, que fazem a requisiçãodo serviço. Na figura 3 são mostrados os dois tipos degeoagentes e a comunicação entre eles e os demaiscomponentes do modelo.

Interfacedo

Usuário

Aplicação Cliente SIG

Usuário

Geoagentes

ServidorServidorServidor

ServidorServidorGIS Trader

Composição

Importaçãoa1

a2

ed2

d1

b1

b2

c

Figura 3: Modelo com detalhamento dos geoagentes.

2.2.1 Geoagente de ImportaçãoO geoagente de importação faz interface com o GIStrader, para localizar serviços. Através da interface dousuário, o geoagente de importação recebe as informaçõesnecessárias para que seja feita uma requisição (fluxo a1,figura 3). De posse das informações, o geoagente deimportação começa a negociar com o GIS trader, paraimportar um serviço. O geoagente de importação requisitaao GIS trader uma lista de serviços disponíveis, do tipo deserviço solicitado pelo usuário (fluxo b1, figura 3). Se oGIS trader possuir algum serviço do tipo solicitado, eleenvia uma lista dos serviços encontrados (fluxo b2, figura3). Para encontrar o serviço, pode ser necessário que oGIS trader estabeleça federação com outros GIS traders,

Page 65: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

mas isso é transparente para o geoagente de importação.Se nenhum serviço for encontrado, uma mensagem éenviada ao geoagente de importação, que retorna aaplicação do usuário (fluxo a2, figura 3). Podem serencontrados diversos serviços de um mesmo tipo em umúnico GIS trader, então o GIS trader envia uma lista comtodos os serviços encontrados. Ao receber a lista deserviços, o geoagente de importação escolhe,aleatoriamente, um serviço para fazer a invocação. Aescolha do serviço a ser invocado poderia ser feita devárias outras maneiras: uma delas seria mandar a lista paraque o usuário escolhesse; outra forma seria escolher oprimeiro serviço da lista. A opção por escolher o serviçoaleatoriamente é para evitar ao máximo a interferência dousuário. O critério de escolher o primeiro serviço da lista,poderia ficar sobrecarregando um único serviço. Em umfuturo, o geoagente poderá ser inteligente para fazer aescolha de forma criteriosa.

Depois de escolher um serviço, o geoagente deimportação passa as informações para o geoagente decomposição (fluxo c, figura 3).

2.2.2 Geoagentes de Composição

O geoagente de composição é responsável por invocar oserviço no servidor de geoprocessamento e fazer acomposição dos resultados, se necessário. Ele conhece omodelo de dados da aplicação e faz os ajustes necessáriospara que não ocorram problemas de semântica dos dados.Portanto, quando o geoagente de composição recebe dogeoagente de importação a referência do objeto, ele faz ainvocação do serviço no servidor (fluxo d1, figura 3), queenvia os resultados (fluxo d2, figura 3). O geoagente decomposição faz os ajustes necessários no resultado e oenvia para a aplicação cliente (fluxo e, figura 3). Emalguns casos pode ser necessário que vários servidoressejam invocados, por exemplo: o usuário necessita dacomposição de dados que estão espalhados em váriosservidores. Nesse momento será necessária a composiçãode todos os resultados obtidos.

3 Um ExemploPara validar o modelo, foi feito um estudo utilizando ocaso do Projeto “Corredor Atlântico do Mercosul”, ouabreviadamente CAM. O consórcio Corredor Atlântico doMercosul é uma organização privada, sem fins lucrativos,que abrange portos, companhias de navegação esindicatos, com o objetivo de tornar as vias costeiras maiscompetitivas. A iniciativa visa agilizar e facilitar aintegração entre os países do Mercosul (Brasil, Argentina,Paraguai e Uruguai), transferindo alguns milhões detoneladas de carga da rede rodoviária intra-costal para osistema costeiro de navegação [16].

O exemplo trata do uso dos objetos básicos domodelo. Considera-se a seguinte consulta: uma carga de

milho situada em Buenos Aires - Argentina deverá serenviada para Recife - Brasil. Neste exemplo oAdministrador da Federação se localizará no Rio deJaneiro por ser um ponto central do Mercosul, otimizandoo tráfego de mensagens na rede. Assim, se houvernecessidade de cadastramento de novos serviços, ospedidos são enviados para este ponto, bem como, quandohouver a instanciação de novos GIS traders no Corredor.Conforme novos pontos são adicionados ao Corredor,novos GIS traders são instanciados, já que a demanda eoferta de serviços aumenta.

Primeiramente, o ponto de Buenos Aires deve terconhecimento de todas as vias pelas quais essa carga podeser transportada. Dessa forma, são verificados quais dadossão necessários para a execução da consulta. Se houverdados que o ponto não possui, por estarem distribuídos narede, ou que necessitem ser atualizados, um pedido éenviado para o geoagente de importação para que encontreos mesmos. O geoagente de importação se comunica como GIS trader, que informa uma lista de serviços de dadosreferentes a estradas, portos e ferrovias em que a cargapoderá passar. Caso seja necessário, o GIS trader ao qualo ponto de Buenos Aires está ligado, se comunica comoutros GIS traders da federação a procura dos serviços.Neste momento, podem acontecer três problemas:

1. o serviço não ser encontrado no tempo limitado:uma mensagem é retornada para o usuárioavisando o timeout;

2. o tipo de serviço desejado ainda não foi cadastradopelo Administrador da Federação. Neste caso,deve ser enviado um pedido para que oAdministrador da Federação verifique apossibilidade da criação do novo tipo de serviço eassim, as aplicações comecem a disponibilizaresse serviço nos diversos GIS traders dafederação;

3. algum GIS trader com o qual se deseja estabelecerfederação está com problemas. Neste caso, pede-se ao Administrador da Federação a referência deum outro GIS trader para que se estabeleça umanova federação. Dessa forma a busca de serviçosnão fica prejudicada pelo fato de se ter um GIStrader sem funcionar.

Não havendo problemas, o GIS trader fornece para ogeoagente de importação uma lista dos serviçosencontrados. O geoagente de importação escolhe,aleatoriamente, um serviço da lista e passa a referência domesmo para o geoagente de composição que faz ainvocação do serviço no devido servidor. Conforme osresultados da invocação vão sendo obtidos, o geoagentede composição vai fazendo os devidos ajustes paraentregá-los ao usuário. Dessa forma, é transparente para ousuário quais servidores foram invocados para a obtençãodos dados. Estes dados se encontram distribuídos nosdiversos dos pontos do Mercosul e são sendo sempre

Page 66: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

atualizados, dessa forma as tomadas de decisões tornam-se mais precisas.

CORBA$GPLQLVWUDGRU

GD)HGHUDomR

$GPLQLVWUDGRU�GD�)HGHUDomR3RQWRV�GR�0HUFRVXO

*,675$'(5

*,675$'(5

*,675$'(5

���

*,675$'(5

Figura 4: Exemplo de distribuição dos componentes noCAM.

Com os resultados, a aplicação SIG faz omapeamento das estradas, ferrovias e portos, fazendo umestudo comparativo custo/benefício dos possíveiscaminhos. Várias questões devem ser observadas, porexemplo:

• disponibilidade do porto;• tempo de viagem entre as diversas cidades do

percurso;• distância entre as cidades;• tempo que leva para descarregar a mercadoria.

Pode ser que a melhor rota necessite da utilização devários meios de transporte, criando assim, uma redeintermodal.

4 ConclusõesEste trabalho teve por objetivo propor um modelo ondediversos sistemas de informações geográficas distribuídospudessem se comunicar, compartilhando dados e serviços,sem se preocupar com questões relacionadas aheterogeneidade, localização dos dados e serviços edistâncias entre eles. Como resultado, foi apresentado ummodelo obtido através da combinação de tecnologiasemergentes nas áreas de sistemas distribuídos, sistemas deinformações geográficas e agentes. Foram utilizadas asespecificações CORBA e OGIS, e agentes, surgindo assimos conceitos de GIS traders e geoagentes, que formam omodelo proposto.

A interoperabilidade é alcançada tanto em níveloperacional, utilizando CORBA, que garante a localizaçãoe interoperabilidade de objetos em ambiente distribuído eheterogêneo, quanto em nível de aplicação através do uso

do padrão OGIS que garante o compartilhamento de dadosgeográficos. Os geoagentes e o GIS trader surgem paraauxiliar os usuários nas buscas dos dados e serviços que seencontram distribuídos, para facilitação de aplicações degeoprocessamento heterogêneas em ambientes de largaescala.

O GIS trader, baseado nas especificações CORBA,foi criado para organizar o cadastramento de serviços degeoprocessamento distribuídos em redes heterogêneas. Oque justifica a criação de um GIS trader específico é queos serviços de geoprocessamento apresentam grandecomplexidade, necessitando assim de uma forma eficientepara organizá-los, para facilitar as buscas e,consequentemente, aumentar o compartilhamento. Afederação de GIS traders é necessária quando se trata deredes de longas distâncias, pois além de não sobrecarregarum único GIS trader, o anúncio e cadastramento passa aser distribuído, permitindo que usuários e aplicações secomuniquem com GIS traders mais “próximos”,diminuindo o tráfego na rede. Outra vantagem é que sehouver um GIS trader com problemas, existem outrospara executar o pedido. O Administrador da Federação foicriado para fazer o gerenciamento dos GIS traders dafederação, bem como para controlar a criação de tipos deserviços, amenizando problemas de ambigüidadesemântica, muito comum em geoprocessamento.

Agentes vêm sendo aplicados em várias áreas paraauxiliar na execução de tarefas. Com isso, foi observada apossibilidade de agentes auxiliarem em tarefasrelacionadas a geoprocessamento, surgindo assim conceitode geoagente. Os geoagentes definidos no modelo irão secomunicar com o GIS trader e com servidores degeoprocessamento, auxiliando na busca e invocação deserviços, bem como executando tarefas de conversão ecomposição de dados geográficos. Dessa forma, aobtenção de dados se torna mais fácil e, principalmente,transparente para o usuário, que não irá se preocupar comlocalização e formatos dos dados.

Como sugestões para trabalhos futuros, propõe-se aimplementação do modelo para que possam ser avaliadasas suas vantagens e também verificadas questõesrelacionadas ao desempenho do sistema, para eventuaisajustes na implementação, bem como no modelo. Umaoutra sugestão é a evolução dos geoagentes através de umestudo mais detalhado sobre inteligência artificial, paraque os agentes passem a raciocinar e tomar decisões maisprecisas. Também deve ser estudada a possibilidade deagentes móveis, pois esses agentes podem procurar osdados com maior facilidade, bem como ajudar nocompartilhamento de recursos distribuídos. Também ésugerido um estudo mais aprofundado com relação a GIStraders e federações de GIS traders, visando encontrarmelhores formas de organização para obter mais precisãoe eficiência nas buscas dos serviços. Sugere-se averificação da possibilidade de dividir os GIS traders por

Page 67: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

contextos, onde cada GIS trader faz o cadastro de um tipode serviço específico, no sentido de aumentar ainda maisas possibilidades de escalabilidade e atendimento ademandas futuras. Esses trabalhos possibilitarão melhorase ajustes no modelo proposto, trazendo benefícios para ocompartilhamento de aplicações de geoprocessamento.

5 Referências Bibliográficas[1] Bearman, M. Trading in Open DistributedEnvironments, Proceedings of the InternationalConference on Open Distributed Processing, Brisbane,Austrália, fevereiro 1995.http://www.dstc.edu.au/Publications/index.html

[2] Behrens, C., Shklar, L., Basu, C., Yeager, N., Au., E.The Geospatial Interoperability Problem: LessonsLearned from Building the Geolens Prototype.Proceedings of Interop97, Califórnia, dezembro 1997.http://geolens.tipandring.com

[3] Buehler, K. The OpenGIS Guide – Introdution toInteroperable Geoprocessing. Ed. K. Buehler and L.McKee, Massachusetts, 1998.http://opengis.org/guide/guide1.html.

[4] Câmara, G., Casanova, M. A., Hemerley, A. S.,Medeiros, C. M. B., Magalhães, G. Anatomia deSistemas de Informação Geográfica. X Escola daComputação, Campinas: SBC, julho 1996.

[5] Filho, J., Iochpe, C. Introdução a Sistemas deInformações Geográficas com Ênfase em Banco deDados. XV Jornada de Atualização em Informática,Recife, outubro 1996.

[6] França, S. V. A. Um Modelo de Sistema deInformações Geográficas Distribuído Baseado emTraders e Agentes. Dissertação de mestrado DI/UFPE,Recife, dezembro 1999.

[7] Franklin, S., Graesser, A. Is it an Agent, or Just aProgram?: a Taxonomy for Autonomous Agents.Proceeding of Third International Workshop on AgentTheories, Architectures, and Languagues. Verlag,setembro 1996.http://www.msci.menphis.edu/~franklin/AgentProg.html

[8] Gardels, K. The Open GIS Approach to DistributedGeodata and Geoprocessing. Third InternationalConference/Workshop on Integrating GIS andEnvironmental Modeling, pp. 21-25 Santa Fé, janeiro1996.http://www.regis.berkeley.edu/gardels/envmodel.html

[9] Lopez, X. R. Interoperability Through Organization:The Role of Digital Libraries in Distributed KnowledgeManagement. Proceedings of Interop97, Califórnia,dezembro 1997.http://bbq.ncgia.ucsb.edu/conf/interop97/program/papers

[10] Jennings, N. R. e Wooldridge, M. Agent TechnologyFoundations, Applications, and Markets, UNICOM, 1ª

edição, 1998.

[11] Macêdo, R. C. Internet Trader: Um Trader paralocalização de objetos em um ambiente distribuído naInternet. Plano de Dissertação, DI/UFPE, março 1999.http://www.di.ufpe.br/~rcdm/mestrado/index.html

[12] Nwana, H. S. Software Agents: An Overview.Knowledge Engineering Review. Vol. 11, No 3, pp.1-40,setembro 1996.http://www.sce.carleton.ca/docs/AgentsOverview/ao.html

[13] Orfali, R., Harkey, D., Edwards, J. The EssentialDistributed Objects - Survival Guide. John Wiley &Sons, Inc, 1.a edição, 1996.

[14] Perez, C., Salgado, A., Ferraz, C. Processamento deInformações Geográficas Distribuídas: Arquiteturas paraas Redes de Serviços Públicos. XXIII ConferênciaLatino Americana de Informática (CLEI'97 ), pp. 157-167, Valparaiso, Chile, novembro 1997.

[15] Rodrigues, A., Grueau, C., Raper, J. Neves, N.Research on Spatial Agents. Proceedings of the ThirdJoint European Conference and Exhibition onGeographical Information (JEC-GI'97) , Viena, Austria,abril 1997.http://helios.cnig.pt/~armanda/

[16] Vivacqua, P. A., Stehling, S. M. F. A Logistic Projectfor South America’s Integration. Seminário de La OCDEsobre Redes de Transporte Intermodal y Logística,México, junho 1997.

[17] Vogel, A., Bearman, M., Beitz, A. EnablingInterworking of Traders, Proceedings of theInternational Conference on Open DistributedProcessing, Brisbane, Austrália, Fevereiro, 1995.http://www.dstc.edu.au/Publications/index.html

Page 68: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Arquiteturas Cliente-Servidor para Bibliotecas Geográficas Digitais

José Roberto Osses1

João Argemiro de Carvalho Paiva2

Gilberto Câmara2

1FUNCATE- Fundação de Ciência, Aplicações e Tecnologia Espaciais, Av. Dr. João Guilhermino - 429 - 11o AndarEdifício Saint James, Centro - São José dos Campos - SP - Brasil - CEP: 12.210-131

{osses} @geo.funcate.org.br2INPE-Instituto Nacional de Pesquisas Espaciais, Caixa Postal 515, 12201 São José dos Campos, SP,Brasil

{miro,gilberto}@dpi.inpe.br

Abstract. This work describes the development of a client-server application for dissemination ofgeographical data on the Internet. The authors describe a strategy that relies on use of the conceptualschema of the geographical database as a means for data selection and for establishing a compromisebetwen client and server. The resulting system has acceptable performance and indicates a possible client-server solution for geographical digital libraries.

Resumo: Este trabalho descreve o desenvolvimento de uma aplicação cliente-servidor para a disseminaçãode dados geográficos na Internet. Os autores descrevem uma estratégia que se baseia no modelo conceitualde uma base de dados geográfica como forma de seleção de dados, e para o estabelecimento de umcompromisso entre cliente e servidor. O sistema resultante apresenta performance aceitável e indica apossibilidade de uma arquitetura cliente-servidor para bibliotecas geográficas digitais.

Keywords. Geographical databases, Geographical digital libraries, GIS.

1 Introdução

Um dos desafios crescentes para as instituiçõesque lidam com informações geográficas é apublicação de dados através da Internet. Por suanatureza gráfica e bidimensional, o ambienteWWW (“World Wide Web”) oferece uma mídiaadequada para a difusão da geoinformação. Amédio prazo, espera-se que a disponibilidade “on-line” de grandes bases de dados espaciais e deferramentas eficientes de navegação torne ageoinformação acessível de forma ampla, sem anecessidade de aquisição de software específico.Muitos esforços tem sido realizados neste sentidoprocurando estender as técnicas já utilizadas parabibliotecas digitais convencionais, que já utilizama Internet para difundir seu acervo, paraBibliotecas Geográficas Digitais (BGD) onde osobjetos a serem armazenados são capazes derepresentar dados geográficos.O principal objetivo de uma BGD é fornecerferramentas para armazenar, descobrir e recuperardados geográficos. Uma das mais importantesiniciativas tomadas com este objetivo é a“Alexandria Digital Library” (ADL) naUniversidade de Santa Bárbara na Califórnia(UCSB,2000). O propósito da ADL é aprimorar ogerenciamento de acesso a informações

geograficamente referenciadas, tais como mapas,fotos aéreas e atlas. A sua interface permite aousuário navegar no banco de dados usando umaseleção de regiões a partir de um mapa mestre etambém selecionando funções no menu. Aarquitetura da ADL envolve quatro componentesbásicos:- A interface com o usuário que suporta acesso

de forma gráfica e textual aos outroscomponentes do sistema.

- Um catálogo distribuído que permite aousuário identificar repositórios de interesse.

- Um componente de armazenamentodistribuído contendo os repositórios digitais.

- Um componente de ingestão que permitearmazenamento de novos repositórios,extração de metadados e adição dosmetadados aos catálogos.

Diversas arquiteturas tem sido propostas paraBGD e de maneira geral a solução adotada parafacilitar a difusão de informação geográficaatravés da Internet é acoplamento de um servidorde dados geográficos. As tecnologias comerciaisdisponíveis podem ser enquadradas genericamenteem duas grandes classes:

Page 69: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

- Servidores de mapas, que, respondendo apedidos remotos, enviam uma imagem(matriz) de tamanho fixo nos formato GIF ouJPEG. Esta solução permite configurar oservidor para responder a diferentes tipos deconsulta, sem requerer que todos os dados aser transmitidos sejam pré-computados.Entretanto, o usuário consegue visualizarapenas as imagens enviadas; qualquer novopedido é enviado de volta para o servidor,resultando em mais uma transferência pelaInternet. Dependendo da velocidade deacesso, esta estratégia pode resultar emlongos e sucessivos períodos de espera. Comopor exemplo temos o “Internet Map Server”da ESRI.

- Clientes de Apresentação, que adotaramcomo solução a transmissão de todos osdados no formato vetorial para a máquina docliente, com posterior visualização local.Estes servidores encapsulam a informação emformatos gráficos, que podem serapresentados por meio de programasadicionais (“plug-ins”) acoplados a“browsers” como o Netscape ou o Explorerou por meio de “applets” JAVA. Estaestratégia permite uma maior flexibilidade dolado do cliente, que pode realizar operaçõeslocais de visualização e consulta sob os dadostransferidos. O tempo de acesso inicial paratransferência é maior que no caso anterior,mas muitas das operações posteriores serãorealizadas localmente, o que resultausualmente em um tempo de resposta médiomelhor. Exemplos são os produtos“Geomedia Web Map” da INTERGRAPH,“Map Guide” da AUTODESK e“SpringWeb” do INPE.

No entanto, as duas alternativas apresentamproblemas. No primeiro caso, todos os dadosficam armazenados no servidor, e no segundo,todos precisam ser transferidos para o cliente.Seria mais conveniente dispor de configuraçõescliente-servidor, que pudessem balancear ospedidos de consulta, permitindo uma apresentaçãoe navegação local em parte dos dados e realizandoacessos remotos ao servidor apenas quandoestritamente necessário.Além dos problemas relativos a transmissão dedados muitos outros aspectos devem ser levadosem conta para a construção de uma BGD. Ao secoletar dados geográficos para fazerem parte da

BGD já se depara com um grande problema que éa falta de padronização de formatos, modelossemânticos e metadados para os diversos sistemasde onde eles tiveram suas origens, dificultandoassim sua integração. A tarefa de definir ummodelo abrangente que possa ser utilizado nasdiversas aplicações de Sistemas de InformaçõesGeográficas não é trivial e até o momento não sechegou a um consenso. Estão surgindo diversaspropostas de padronizações e um dos grupos quetem se preocupado com estes problemas é oConsórcio OpenGIS® (OGC,2000).

Neste contexto este trabalho apresenta umaproposta de arquitetura cliente-servidor paradados geográficos, abordando alguns aspectosrelacionados a BGD tais como transmissão eapresentação de mapas, conversão de dados ebuscas por atributos e regiões. Esta arquiteturaestá baseada em tecnologia JAVA, utilizando um“applet” no ambiente do cliente e um “servlet” noambiente do servidor, e propõe uma forma deinterface com o usuário que irá produzir consulta,que serão pré-processadas pelo “applet” eenviadas ao “servlet” se necessário.

O trabalho está organizado como segue. Na seção2, discutimos as alternativas de arquiteturacliente-servidor para bibliotecas digitais. Na seção3, descrevemos os componentes da soluçãoproposta. Na seção 5, fazemos um balanço dospontos positivos e negativos de nossa proposta.

2. Arquiteturas para Bibliotecas GeográficasDigitais

Gardels (1997) apresenta uma visão geral dearquitetura de uma biblioteca geográfica digital,operando no ambiente da Internet. Na sua visão,esta arquitetura apresenta os seguintescomponentes, ilustrados na Figura 1:

- Módulo visualizador.- Módulo Analisador.- Módulo Fusor.- Módulo Atomizador.

O módulo visualizador é constituído basicamentepela interface com o usuário. Esta interface devepermitir aos usuários descobrir, recuperar eapresentar dados geográficos e pode ser divididaem módulos de apresentação de atributos e outrosmódulos com o propósito de atender requisitosespecíficos da aplicação.

Page 70: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

De maneira geral, o usuário não conhecepréviamente o conteúdo da BGD. Assim ainterface deve fornecer meios para que ele busquepor dados de sua área de interesse, como porexemplo através de uma ferramenta de interaçãocom um mapa onde ele possa selecionar umaregião geográfica. Uma outra forma pode seratravés do uso de metadados que podemdirecionar os usuários a formular comandos debusca que permitam localizar os dados desejadosatravés de seleção de atributos que satisfaçamseus requisitos.

Figura 1 – Arquitetura proposta por Gardels.

O módulo analisador, de forma oposta aovisualizador, geralmente está localizado noservidor, totalmente ou em grande parte. Ele seráresponsável por: (a) receber descrições geradas nainterface com o usuário interpretar e executar asinstruções nelas contidas; (b) Montar as coleçõesde objetos geográficos que serão enviadas comoresposta as descrições para a interface com ousuário. O analisador pode estar centralizado em

um servidor único ou diversos servidores atuandode forma federada (Laurini,1998). O módulo fusortrata dos problemas de integração de diversosesquemas utilizados para originar os dados queintegrarão a BGD. Em cada sistema os dadosgeográficos possuem representações conceituaisdiferentes. Ainda não existe um consenso comrelação a um esquema de representação conceitualpara dados geográficos. Alguns esforços tem sidofeitos neste sentido sendo os mais notáveis osefetuados pelo consórcio OpenGis®. O móduloatomizador trata das conversões estruturais dosdados armazenados em diferentes sistemas.Existem alguns padrões intermediários utilizadospara transferência tais como DXF, SDTS, SAIFetc. Este mecanismo não garante que os dadossejam todos convertidos devido a dificuldade derepresentar nestes formatos detalhes internos detodos os sistemas utilizados.

3 Arquitetura Proposta

3.1 Configuração

A arquitetura proposta está baseada no modelo decamadas múltiplas, sendo utilizadas três camadasneste trabalho. A primeira camada é umnavegador para Internet que serve como umCliente Universal. Acoplado ao navegador temosum “applet” JAVA. O Applet é responsável porfunções ligadas ao cliente tais como: apresentaçãode mapas e objetos geográficos, controle dediálogos e interfaces, controle de cache de dados econtrole de geração de expressões em linguagemde consulta.A segunda camada é constituída de um servidorpara protocolos HTTP com capacidade deexecutar “servlets” em JAVA. O “servlet” é umaplicativo que permanece em execução noservidor aguardando por solicitações dos clientese tem a capacidade de atender diversassolicitações simultâneas. O “applet” podeestabelecer uma conexão com qualquer servidoronde exista um “servlet” preparado para recebersuas requisições. A seleção do servidor pode serfeita de forma predefinida ou pode ser fornecidaao usuário uma interface para seleção através deseu nome ou endereço IP. Não existem restriçõestécnicas com relação ao número de servidores quepodem ser acessados simultaneamente por um“applet”. O protocolo de comunicação entre estasduas camadas é o HTTP de onde sãoespecialmente utilizados os métodos GET e POSTpara implementação de um sub-protocolo paratroca de mensagens específicas entre as camadas.

Interface com o Usuário

Modelador de InformaçãoEsquema do SIG

Algoritmos de Geoprocessamento

DescreveMapa/Imagem

BuscasFeições/Imagens

Tecnologia de Objetos Distribuídos

Seleção

Geo-Objetos

Gerenciador de Acesso aos Dados

Extração

Valores/Tipos bemConhecidos

SGBD SIG

SQL API

Visualizador

Analisador

Fusor

Atomizador

Page 71: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

A descrição do sub-protocolo utilizada nestetrabalho é apresentada em tópico adiante quedescreve a comunicação entre o “applet” e o“servlet”.A terceira camada é composta por um SistemaGerenciador de Banco de Dados Relacional quearmazena todos os dados utilizados pelo sistema.O “servlet” acessa as informações do banco dedados relacional utilizando a API JDBC dalinguagem JAVA que é um conjunto deespecificações que define como um programaescrito em JAVA pode se comunicar e interagircom um banco de dados (Siple,1998).

Figura 2 – Funções principais do SIGTEIA.

O “servlet” é encarregado de interpretar assolicitações dos clientes, acessar o banco dedados, executar os comandos necessários,preparar e enviar a resposta adequada de volta aocliente.A Figura 2 apresenta as funções principais de cadaparte do sistema ligados ao cliente e ao servidor.

O sistema desenvolvido para avaliar estaarquitetura foi denominado SIGTEIA formadopelo anacronismo entre Sistema de InformaçõesGeográficas e uma variação da tradução de WEB(Rede, Teia) utilizado para designar a Internet.

3.2 O Modelo Conceitual

O Modelo Conceitual adotado é baseado nomodelo do SPRING (INPE/DPI, 2000). Nestetrabalho estão sendo tratadas somente entidadesgeo-referenciadas que podem ser classificadascomo Geo-Objetos. Além disso a únicarepresentação implementada para os Geo-Objetosé a vetorial. Outra diferença com relação ao

Camada II - ServidorServidor Web+

Servlet

Camada I - Cliente Navegador+Java Applet

Objetos Geográficos

Apresentação Gráfica

Geração deExpressões de

Consulta

Manutenção deBanco de Dados

(Modelos,Geometriase Atributos)

Execução deConsultas de

Usuários

Diálogos com oUsuário

Manutenção deCache de Dados

Montagem de ObjetosGegráficos

Consulta do Usuário

Camada III-ServidorBanco de Dados

Relacional

EsquemasAtributos

GeoObjetos

SQL

Registros

SIGTEIA

Page 72: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Modelo do SPRING é que cada Geo-Objetopossui uma única representação que é do tipo“WKG” (Well Known Geometry) definidos pelopadrão OpenGis®. A persistência dos dados éfeita totalmente em bancos de dados relacionaisutilizando campos binários longos paraarmazenamento de “WKG”. A Figura 3 apresentao modelo orientado por objetos do SIGTEIA.

O Banco de Dados Geográfico é a classe principalneste modelo. Uma instância desta classe contéminformações a respeito do esquema do banco dedados em uso ou ativo, ou seja, quais os projetos,projeções, categorias, planos de informação e geo-objetos para determinado banco de dadosgeográfico. Um servidor de dados geográficospode possuir diversos bancos de dadosgeográficos e cada um deles com esquemasdiferentes. No caso do SIGTEIA quando o“applet” faz uma requisição solicitando o esquemade determinado banco de dados geográfico o“servlet” fica responsável por gerar uma instânciadesta classe e enviar este objeto como resposta. OProjeto define uma região física normalmenteretangular onde os dados estão contidos. EsteProjeto está associado a uma projeção e possui umconjunto de planos de informação que por sua vezvão possuir uma coleção de Geo-Objetos. Ascategorias procuram descrever fenômenos quepossuem características comuns e desta formaagrupá-los para facilitar seu entendimento. NoSIGTEIA existem dois tipos básicos de categoriauma para determinar as características dos planosde informação, ou seja, que tipos de dados estãosendo agrupados em cada plano e outra quedetermina características comuns entre Geo-Objetos que é denominada categoria de objetos.Um plano de informação de determinada categoriapode receber objetos de diversas categorias deobjetos diferentes.No SIGTEIA o Visual esta relacionado ao Geo-Objeto e não a categoria de objeto a que ele estaassociado. Desta forma o usuário poderá efetuardiferenciações de representação entre Geo-Objetos da mesma categoria que pode ser útil paraoperações tais como agrupamento por atributossemelhantes.

Figura 3 – Modelo Orientado por Objetos doSIGTEIA

3.3 Organização do Banco de DadosGeográfico

O Banco de Dados Geográfico é organizado noservidor e está totalmente contido em um Sistemade Banco de Dados Relacional. Um servidor podepossuir diversos bancos de dados geográficos epode estar atendendo a demanda por informaçõesreferentes a bancos diferentes ao mesmo tempo.Cada banco de dados possui tabelas quearmazenam informações com relação ao esquemados dados, a geometria e atributos de Geo-Objetos.

3.4 Funções do “Servlet”

O “servlet” fica localizado no servidor junto como Banco de Dados Geográfico, e é responsável pormanter uma conexão com o Banco de DadosRelacional e com o “applet”. Na conexão com o“applet” se faz necessário estabelecer umprotocolo para que o “servlet” seja capaz deinterpretar as solicitações efetuar as atividadescorretas e enviar as respostas adequadas. Porexemplo o “applet” pode solicitar que o “servlet”

Banco deDados

Geográfico

Projeto

Plano deInformaçãoCategoria

Projeção

Mapa deObjetos

Cadastral

Representação

Geometria

Geo-Objetos

Visual

ASSO

CIA

ÇÃO

AGR

EGAÇ

ÃO

ESPE

CIA

LIZA

ÇÃO

Page 73: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

envie o esquema do banco de dados geográficos, ea ação a ser tomada é conectar-se ao banco dedados ler as informações relativas ao esquema,montar objetos para as classes pertencentes aoesquema e enviar estes objetos de volta ao“applet”. O protocolo utilizado pelo “servlet” paracomunicação com o banco de dados relacional é opadrão SQL. A conexão é efetuada através dachamada de rotinas pertencentes a API JDBC.O servidor carrega o “servlet” que pode entãoaceitar diversas requisições dos clientes e retornardados a eles. O “servlet” possui métodosdenominados “doGet” e “doPost” que sãoacionados toda vez que ele recebe uma requisição

Figura 4 – Troca de informações entre Applet/Servlet

do cliente do tipo GET e POST do protocoloHTTP. Estes métodos efetivamente irão tratar dacomunicação entre o “servlet” e os clientes. Para oSIGTEIA um protocolo foi definido parapossibilitar esta comunicação. Toda vez que ocliente envia um comando de GET ou POST deveenviar também um vetor de parâmetros e objetospara que o “servlet” interprete execute o comandoe devolva outro vetor contendo parâmetros eobjetos como resposta. A Figura 4 exemplifica ofluxo de parâmetros e objetos entre“Applet/Servlet”.

3.5 Funções do Applet

O “applet” tem como funções básicas o controlede apresentação do modelo e dos dadosgeográficos e seus atributos aos usuários. Alémdisso o “applet” se preocupa em manter um cachede dados do lado do cliente de forma a minimizara transferência de dados de forma desnecessáriaentre o cliente e o servidor. As interfaces com o

usuário estão organizadas em forma de painéissobrepostos. O controle de seleção de ativação depainéis é feito por meio de tabuladoresposicionados em uma de suas laterais com umnome identificador do painel. Os painéis contémos elementos de interface, tais como botões, listas,e textos editáveis, utilizados para interação com ousuário. A Figura 5 apresenta a interface inicialdo “applet” do SigTeia. O sistema tem suasfunções divididas em 8 painéis principais:Conexão, Esquema, Apresentação, Seleção porPlanos, Seleção por Atributos, Metadados eMensagens. Os painéis interagem entre si ecomandos em um deles pode afetar o contexto deoutro. Basicamente as funções de cada painel são:- Conexão, controla a seleção de servidores e

estado da conexão trocando mensagens entreo “applet” e o “servlet”.

- Esquema, apresenta o esquema através deuma interface hierárquica em forma deárvore.

- Seleção por planos, permite a seleção total deum plano de informação para apresenta.Possui dispositivos para atribuir cores eprioridades de apresentação dos geo-objetospertencente ao plano selecionado.

- Seleção por atributos, permite a montagem deconsultas simples em SQL que serão enviadasao servidor para buscar os objetos desejados.

- Objetos, é uma interface em forma de tabelautilizado para apresentar os atributos quepodem ser selecionados pelo usuário.

- Apresentação, possui uma área para desenhoque permite a interação do usuário com arepresentação gráfica dos objetosselecionados.

- Metadados, é apresentada em forma textualalgumas informações adicionais que podemser importantes para facilitar o entendimentopelo usuário do conteúdo das informações nobanco de dados. O texto apresentado esta emformato HTML.

4. Análise da Arquitetura Proposta

A grande vantagem da arquitetura desenvolvidano trabalho é sua relativa simplicidade. Partindo-se de um modelo de dados bem definido, foramdefinidos componentes cliente-servidor paradados geográficos que operam de formasemelhante aos bancos de dados convencionais.Os dados são trazidos para a máquina do clientesob demanda.

Applet Servlet

Requisição do Cliente

Vetor de Objetos

Objeto deParâmetros

Resposta do Servidor

Objeto1 Objeto N

Objeto deParâmetrosObjeto1Objeto N

Page 74: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Este trabalho mostra que o uso de um modelo dedados conceitual facilita muito o estabelecimentode um compromisso cliente-servidor. O uso de ummodelo semântico forte aumenta a percepçãocognitiva do usuário sobre o conteúdo do bancode dados residente num servidor remoto.A principal limitação da arquitetura proposta é suaênfase nos aspectos descritivos dos dados para aseleção e falta de filtragem espacial dos dados.Assim, caso o usuário queira visualizar uma áreageográfica limitada e o dado desejado cubra umaárea maior, ele é recuperado na sua totalidade eenviado para o cliente. Isto resulta numatransmissão de dados possivelmentedesnecessária.

5. Conclusões

Este trabalho mostra a viabilidade dodesenvolvimento de tecnologias JAVA (“applet”-“servlet”) para bibliotecas geográficas. Indicaainda que o uso de um esquema conceitual podeser importante suporte neste tipo de aplicativo.Finalmente, mostramos que uma solução completadeveria envolver outros aspectos não consideradosneste trabalho.

Agradecimentos

Este trabalho faz parte do projeto de cooperaçãoconjunta CNPq/NFS sobre Introperabilidade emSistemas de Informações Geográficas, sendofinanciado pelo Conselho Nacional deDesenvolvimento Científico e Tecnológico(CNPq).

Referências Bibliográficas

Câmara, G.; Souza, R.C.M.; Freitas, U. M.;Garrido, J. “SPRING: Integrating Remote Sensingand Gis by Object-Oriented Data Modelling”.Computer and Graphics, vol. 20, n.3,1996.

Gardels, K. (1997). Open GIS and On-LineEnvirnmental Libraries, SIGMOD Record,Association of Computing Machinery SpecialInterest Group on Management of Data, March1997.

INPE/DPI (2000). SPRING: Sistema deProcessamento de Informações Geo-referenciadas. <http://www.dpi.inpe.br/spring>

Laurini R. (1998). Spatial MultidatabaseTopological Continuity and Indexing: a Step

towards Seamless GIS Data Interoperability.International Journal of Geographical InformationSciences. Vol. 12,4 June 1998, pp. 373-402.OGC- OpenGis® Consortium, 2000. TechnicalSpecifications.<www.opengis.org/techno/specs.htm >

Siple, Mathew D. The complete guide to JAVAdatabase programming with JDBC, ComputingMcGraw-Hill, 1998.

UCSB, 2000- University of California at SantaBarbara, 2000 – <http://alexandria.sdc.ucsb.edu>

Page 75: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 5 - Painel de Seleção por Atributos.

Figura 6 – Painéis de Apresentação, Conexão e Objetos.

Page 76: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

MODELAGEM GEOMÉTRICA 3D E ANÁLISE ESPACIAL DE SISTEMASCÁRSTICOS COM O USO DE OPENGL E SQL

JOSÉ ANTONIO FERRARI1

ALAIN MANGIN2

1IG Instituto Geológico Av. Miguel Stefano 3900, 04301-903 São Paulo - SP [email protected]

2Laboratoire Souterrain du Centre National de Recherche Scientifique - Moulis 09200 - Saint Girons France

Abstract. This paper describes a system developed for geometrical modeling and analysis of karst systems.The program calculates the closure of loops in cave surveys by least square method, and provides the means toobtain query derived maps of the underground system. The software integrates OpenGL and Microsoft Jetdatabase engine technologies to produce 3D visualization of cave passages and digital elevation models linkedwith database. Some examples produced with the system are presented.

Resumo. Este trabalho descreve um programa para a modelagem geométrica e análise de sistemascársticos. O programa utiliza o método dos mínimos quadrados para calcular o fechamento de poligonaisobtidas em levantamentos topográficos subterrâneos, e produz mapas a partir de pesquisas à base de dados. Astecnologias OpenGL e Microsoft Jet database engine são integradas para produzir visualizações 3D de cavernase modelos de elevação digital, conectados a uma base de dados. Alguns exemplos elaborados pelo programa sãoapresentados.

1. Introdução

Pesquisas geocientíficas em terrenos cársticos muitasvezes utilizam informações distribuídas por uma redeintrincada de passagens subterrâneas. Nos estudos dadinâmica e estrutura desta paisagem, a integração dosdados subterrâneos com informações superficiais éconveniente. Ao estudar a geometria das rotas de fluxosubterrâneas, a distribuição de registros paleoclimáticos,ou no desenvolvimento de estudos ambientais, avisualização tridimensional do conjunto da paisagem(superfície e sistema subterrâneo), associada a uma basede dados, amplia o poder de análise do pesquisador.

Este trabalho apresenta uma descrição do sistemaSIS (Sistema de Informações Subterrâneas) que integra abiblioteca gráfica Opengl com o gerenciador de base dedados Microsoft Jet database engine. O programa calculao fechamento de poligonais da topografia subterrânea,gerencia informações relativas aos diferentes segmentosda caverna e gera visualizações tridimensionais dosistema subterrâneo e das superfícies a ele associadas.

2. Visão geral do progama

O programa foi desenvolvido para a plataforma Windowscom a linguagem VisualBasic 5. Foi empregada umainterface do tipo MDI (multiple-document interface), quepermite ao usuário exibir vários documentos ao mesmo

tempo (cada documento em sua própria janela). Graças aesta interface, o usuário pode trabalhar com diferentessistemas subterrâneos ou manipular várias informaçõesde um mesmo sistema.

As informações obtidas no levantamento de camposão armazenadas numa tabela da base de dados. Os dadossão processados (cálculo do fechamento de poligonais) e oresultado fica armazenado em outra tabela. Após esteprocessamento, saídas gráficas podem ser geradas. Asconsultas (padrão SQL) que são feitas à base de dados,resultam em relatórios ou saídas gráficas (modelostridimensionais). Também é possível executar consultasdiretamente sobre a saída gráfica, neste caso, ao clicar omouse sobre o objeto visualizado, sua identificação seráexibida sobre o gráfico e o registro associado seráiluminado numa tabela. A figura 1 ilustra ofuncionamento geral do sistema.

3. Entrada de dados e estrutura da informação

A modelagem geométrica da caverna é obtida a partir dosdados da topografia subterrânea. O levantamentotopográfico resulta num conjunto de visadas (linhas) queunem bases topográficas (pontos). Os atributosintrínsecos de uma visada são: base de partida, base dechegada, comprimento, direção e inclinação. Estasinformações são inseridas no banco de dados através deplanilhas. As medidas de largura e altura dos condutos,

Page 77: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

obtidas em cada base, também são registradas, elas sãoutilizadas para dar volume ao sistema subterrâneo.Trabalhos sobre levantamentos topográficos em cavernas[1,2] discutem a metodologia de campo e a elaboração deplantas e perfis com detalhes de feições subterrâneas, esteassunto não será abordado neste trabalho.

Figura 1. Visão geral do programa.

A evolução de uma caverna pode ser complexa,resultando em sistemas intrincados que apresentam váriosandares ou níveis de desenvolvimento [3]. O SIS permiteque os dados do mapeamento sejam distribuídos emdiferentes setores, possibilitando o agrupamento devisadas em função de uma característica de interesse dopesquisador. A tabela para entrada de dados topográficosé a tabela padrão do programa. Nela estão armazenadastodas as visadas de todos os setores definidos pelousuário. Para facilitar a manipulação dos dados, foramcriados artifícios para a edição dos setores em tabelasindependentes (uma janela para cada setor). O SIS possuitodas as interfaces para a manipulação da base de dados.

Cada visada representa um segmento do sistemasubterrâneo e seu comprimento depende da sinuosidadedas passagens ou do interesse do topógrafo em destacaralgum aspecto. O modelo relacional de banco de dadospermite que além da tabela padrão (tabela de dadostopográficos), várias tabelas de informação sejamassociadas aos segmentos mapeados. A visada (base departida e base de chegada) é a chave de ligação de umsegmento da caverna com diferentes tabelas deinformação. Os campos das tabelas podem ser definidosem função das necessidades do usuário, no entanto, oscampos que estabelecem a ligação com o mapa (visada)são criados automaticamente e não podem ser excluídos.

As tabelas podem ser estruturadas com camposconvencionais (numéricos, texto, booleanos e memo) ecom campos (texto) que contêm o endereço de arquivosde imagem (bmp, jpg, gif, wmf ou emf) ou de texto (txt).Ao criar um campo que armazena o endereço de umarquivo, o usuário também define qual o aplicativo queserá acionado para o abrir. O programa possui módulosnativos para exibir as imagens e o arquivo texto, mas épossível indicar um aplicativo externo para exibir osdocumentos. Neste caso, outros formatos de arquivotambém podem ser escolhidos. Esta característicamultimídia do sistema permite a interação de imagens,textos ou sons ao analisar segmentos da caverna. Porexemplo, pode-se visualizar fotos dos estratos e o croquide um depósito sedimentar.

Esta capacidade do programa é útil em pesquisas queexploram registros sedimentares distribuídos ao longo dequilômetros de passagens subterrâneas, como os jáexecutados no carste da Chapada Diamantina [4, 5], ouem estudos multidisciplinares voltados para o manejoturístico destes monumentos geológicos.

4. Processamento dos dados topográficos

Em levantamentos topográficos, um problema bemconhecido é o do fechamento de poligonais. Asimprecisões das medidas de campo levam a um errodurante o fechamento, impedindo a coincidência entre oponto de partida e o ponto de chegada.

Quando se trabalha com apenas uma poligonal, nãoé difícil distribuir manualmente o erro entre as visadas. Acorreção manual torna-se impossível quando trabalhamoscom sistemas complexos, onde um grande número depoligonais estão conectadas [6, 7]. Para eliminar asubjetividade na distribuição dos erros, utiliza-se ométodo dos mínimos quadrados, que pressupõe que oserros de medida são aleatórios e seguem uma distribuiçãogaussiana. Este método é adotado pelo SIS e segue oalgoritmo de Taillard [7].

Durante o processamento, é gerada uma matriz dedescrição do sistema, e são obtidas as componentescartesianas das bases topográficas, ponderando os errospadrão que foram definidos para os instrumentos demedição (bússola, clinômetro e trena). As coordenadas x,y e z de uma base de origem (definida pelo usuário) sãoutilizadas para referenciar todo o sistema. Ao término doprocesso, as coordenadas de todas as bases topográficassão armazenadas numa tabela. Estas coordenadas sãoutilizadas na modelagem geométrica do sistemasubterrâneo.

Base dedados

Dados decampo

Cálculo datopografia

Query

SaídasgráficasRelatório

Query

Relatório

Page 78: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

5. Modelagem geométrica das passagenssubterrâneas e superfícies associadas

A visualização da modelagem geométrica das passagenssubterrâneas e superfícies associadas é obtida com o usodo sistema gráfico OpenGL. Trata-se de um conjunto defunções gráficas 3D, desenvolvidas nos anos 80 para asestações de trabalho da Silicon Graphics. Tornou-sedisponível para usuários de computadores pessoaisquando a Microsoft incluiu uma implementação da APIpara o Windows NT 4.0 e, posteriormente para oWindows 95/98. Em essência, OpenGL renderizapolígonos e fornece algumas ferramentas para rotacionar,escalar e movimentar os objetos gráficos, no entanto, todoo trabalho para definir iluminação, criar e carregarmodelos, desenvolver códigos para exibição e otimizaçãodepende do programador.

Para visualizar as passagens subterrâneas, ascoordenadas cartesianas tridimensionais obtidas noprocessamento dos dados topográficos são transformadaspara o plano 2D com o auxílio de uma projeçãoortográfica. Os objetos 3D são construídos agrupando-seprimitivas como linhas e polígonos. O volume do sistemaé obtido considerando as medidas de largura e altura doscondutos. Neste caso, polígonos planares são utilizadospara compor as laterais, o teto e o assoalho das passagens.As seções dos condutos são definidas nas basestopográficas e são representadas por retângulos. Adireção da seção em cada base é obtida considerando abissetriz do ângulo entre duas visadas. A figura 2apresenta o método utilizado para dar volume ao sistema.

Figura 2. Modelagem das passagens subterrâneas

Superfícies geradas no programa Surfer [8] podemser importadas e exibidas em conjunto com o sistemasubterrâneo. A representação das superfícies é feitautilizando triângulos ou retângulos, cujos vértices sãodefinidos pelas coordenadas dos nós do grid importado. Acor do polígono representa a média dos valores de z dosvértices.

Para iluminar e sombrear objetos 3D, o sistemagráfico necessita do vetor normal (vetor perpendicular ao

plano) de cada polígono desenhado. A representação dasuperfície com o uso de retângulos não permite que todasas possibilidades de renderização sejam utilizadas, poisraramente estes polígonos possuem um único plano nosistema cartesiano 3D. Neste caso, o objeto deve serexibido em estrutura de arame. A representaçãotriangular não apresenta este tipo de problema, pois ostriângulos sempre são planares.

Page 79: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

6. Manipulação das saídas gráficas

Foram desenvolvidas interfaces para explorar os recursosoferecidos pela API OpenGL. Ao gerar uma saída gráfica,alguns dos atributos das cenas são válidos para todos osobjetos visualizados, no entanto, existem atributos quepodem ser manipulados individualmente para cadaobjeto.

A posição do observador pode ser modificadainterativamente. Uma interface com posições prédefinidas e barras de rolagem permitem que os objetossejam observados de qualquer ângulo. A cena pode serrotacionada automaticamente nos eixos x, y ou z, comintervalos angulares variados.

As saídas gráficas geradas pelo programa contamcom 3 pontos de iluminação, localizados na superfície deuma esfera imaginária que circunscreve os objetos 3D.Interfaces possibilitam a definição independente dos seusazimutes, inclinações e cores. Cada ponto possui 3 tipos

de luz (ambiente, difusa e especular). Os índices doscomponentes RGB de cada tipo podem ser modificados.Estas propriedades são importantes para a composiçãodas cores dos objetos. Neste ambiente gráfico, a cor édefinida pela interação entre as propriedades da luz e aspropriedades do material que compõem o objeto. No SIS,o usuário também pode alterar as propriedades domaterial.

As propriedades dos polígonos que compõem osobjetos 3D de uma cena podem ser modificadas de formaindependente. Numa mesma cena, pode-se observar umasuperfície em estrutura de arame e uma cavernasolidificada, ou uma superfície sombreada e transparentepara permitir a visão do objeto subterrâneo. As paletas decores associadas a cada objeto 3D também podem sereditadas. A figura 3 apresenta algumas possibilidades deexibição.

Figura 3. Sistema subterrâneo em estrutura de arame, com os polígonos preenchidos e sob uma superfíciesombreada e transparente.

Page 80: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

7. Análise espacial

A interface MDI utilizada no SIS permite que um mesmosistema subterrâneo seja observado simultaneamente emdiferentes janelas, com atributos e pontos de vistadiferenciados. Esta característica propicia ao pesquisadoruma ferramenta de análise por inspeção visual da cavernae das superfícies associadas.

Aliada à interface MDI, a base de dados possibilita arealização de pesquisas a partir de critérios definidos pelousuário. Um editor foi desenvolvido para a elaboração de

questões estruturadas. Pode-se perguntar ao sistema ondeexistem depósitos fossilíferos, ou onde existem colôniasde morcegos no interior da caverna. Também é possívelrealizar pesquisas, cruzando várias informações. Existemmuitas possibilidades de análise, entretanto, dependentesda estrutura da base de dados desenvolvida para o projeto.Ao executar uma pesquisa, a resposta vem em forma detabela; o programa permite sua conversão em um mapa,destacando os segmentos que representam a resposta. Nafigura 4, podemos observar um mapa resultante de umapesquisa.

Figura 4. Os segmentos da caverna que apresentam volume, correspondem ao resultado da pesquisa à base de dados(segmentos com comprimento >= 15 metros). As linhas mostram as passagens da caverna que não respondem àindagação.

Figura 5. Ao clicar sobre mapa sobre a caverna, o setor é identificado na saída gráfica e na tabela. Caso a tabelacontenha textos ou figuras associadas ao segmento, estes documentos podem ser exibidos.

Page 81: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

É possível consultar informações relacionadas adeterminado segmento da caverna, clicando sobre oobjeto 3D. Foram desenvolvidas subrotinas paraidentificar cada primitiva (polígono ou linha) associadaaos objetos 3D. Ao clicar sobre o mapa, o sistemaOpenGL retorna o identificador (o número) da primitiva.Um arquivo de acesso aleatório, previamente criado,contém a chave de ligação do identificador com a base dedados. O arquivo é lido, e a partir dai o registro da basede dados é automaticamente posicionado, colocando adisposição do usuário as informações relativas aosegmento selecionado. Ao clicar sobre uma superfície, ovalor médio da célula selecionada é encontrado noarquivo de acesso aleatório e exibido na tela. A figura 5apresenta um exemplo de consulta sobre o mapa.

8. Exemplos de aplicação

As aplicações com o uso do SIS estão em seu estágioinicial. O programa vem sendo utilizado em estudosgeocientíficos para compreender a evolução e dinâmicade paisagens cársticas.

Na figura 6, podemos observar resultados parciais darepresentação do sistema Coumo d'Hyouenedo, localizadonos Pirineus franceses. Este sistema possui 94.843 metrosde desenvolvimento, e foi mapeado por exploradoresfranceses. O mapa apresentado resulta de uma pesquisa[9] que vem sendo desenvolvida pelo CNRS.

Um exemplo com a exibição de linhas de visada esuperfície do terreno pode ser observado na figura 7. Estemapeamento [10] foi realizado no carste de Itaetê - BA,região da Chapada Diamantina. A superfície do terrenofoi obtida a partir de levantamento topográfico, utilizandobússola, trena e clinômetro.

A figura 8 apresenta a distribuição das visadas dosistema Areias (Iporanga -SP). O mapa foi elaborado como objetivo de compreender a gênese das cavernas [11]. Namesma figura, podemos observar o modelo digital doterreno da superfície cárstica da região do sistema Areias[12]. O modelo foi elaborado a partir da digitalização decartas topográficas na escala 1:10.000.

9. Considerações finais e perspectivas

Os resultados obtidos mostram que a combinação da APIOpenGL com o gerenciador de base de dados MicrosoftJet database engine, dentro de uma interface tipo MDI,possibilita o desenvolvimento de sistemas paravisualização científica e análise espacial de informaçõesem sistemas subterrâneos.

O programa continua em evolução. Serãodesenvolvidos módulos para a análise estatística dasinformações, módulos para a visualização 3D de

estruturas geológicas associadas ao sistema subterrâneo eo aperfeiçoamento da modelagem geométrica daspassagens, visando uma melhor representação dacomplexidade morfológica dos condutos.

O sistema pode ser adquirido no sitehttp://www.geocities.com/karst_map

Este projeto foi desenvolvido com o apoio daFAPESP Proc.No 97/6329-0.

Agradeço as valiosas recomendações dos revisores.

Referências

[1] Grossenbacher, Y. (1991) Topographie souterraine.Cours Société Suisse de Spéléologie, 4, 105 p.

[2] Thomson, K.C & Taylor, R.L (1991) The Art of CaveMapping. Journal of the Missouri Speleological Survey .Vol. 31 (1-4): 182 p.

[3] Palmer, A. N. (1981) Cave levels and theirinterpretation. National Speleological Society Bulletin,49(2): p. 50-66.

[4] Ferrari, J.A (1992) Interpretação de feições cársticasna região de Iraquara - Bahia. Dissertação de MestradoIG - UFBA. 93 p.

[5] Laureano, F.V (1998) O registro sedimentar clásticoassociado aos sistemas de cavernas Lapa Doce eTorrinha, Município de Iraquara, Chapada Diamantina(BA). Dissertação de Mestrado, IG-USP. 98 p.

[6] Schmidt, V. A. & Schelleng, J. H. (1970) Theapplication of the method of least squares to the closingof multiply connected loops in cave or geological surveys.Bulletin of the National Speleological Society, 32(3): 51-58

[7] Taillard, E. (1991) Un calcul de boucles entopographie souterraine. Actes du 9° Congrès National dela Sociéte Suisse de Spéléologie, 1991. p. 245 – 247.

[8] Golden Software (1993) Surfer, Surface Map System,Golden Colorado. http://www.goldensoftware.com/

[9] Viorel, H.(2000) L'influence de la geologie sur lekarst. Etude comparative entre la zone d'Arbas (Haute-Garonne, France) et la zone Obarsia Closani - PiatraMare (Mehedinti - Roumanie). Tese de doutoramento emdesenvolvimento.Laboratoire Souterrain du CentreNational de Recherche Scientifique

[10] Pereira, R.G.F..A. (1998) .Caracterizaçãogeomorfológica e geoespeleológica do carste da bacia dorio Una, Borda leste da Chapada Diamantina, BA.Dissertação de mestrado, IG- USP, 95 p.

[11] Souza, M.A. e Karmann, I. (1996) Caracterizaçãomorfológica e aspectos genéticos do sistema de cavernas

Page 82: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

areias, Iporanga, SP. XXXIX Cong. Bras. de Geologia,Anais, vol. 4 pp 586-590.

[12] Genthner, C. (2000) Aplicação do traçadorfluorescente Rhodamina-WT no estudo geohidrológico do

sistema cárstico do Lajeado - Vale do Betari, Iporanga -SP. Dissertação de mestrado em desenvolvimentoInstituto de Geociências -USP.

Figura 6. Sistema Coumo d'Hyouenedo. Vista em planta e detalhe em 3D.

Figura 7. Linhas de visada e superfície do terreno, Gruta do Baixão, Itaetê - BA.

Page 83: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 8. Planta das linhas de visada do Sistema Areias e superfícies topográficas.

Page 84: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Servlets e COM para a Visualização de Dados Geográficos na Web

ARLINDO CARDARETT VIANNA1,2

ANSELMO CARDOSO DE PAIVA2,3

MARCELO GATTASS2

1 Universidade Estácio de Sá - Campus Barra Av. Prefeito Dulcídio Cardoso, 2900,22631-021 Rio de Janeiro, RJ, Brasil

[email protected]

2 PUC-Rio – Pontifícia Universidade Católica do Rio de JaneiroTeCGraf – Grupo de Tecnologia em Computação Gráfica

Rua Marquês de São Vicente, 22522453-900 – Rio de Janeiro, RJ

{acv,paiva, gattass}@tecgraf.puc-rio.br

3 UFMA – Universidade Federal do MaranhãoCentro-Tecnológico - Departamento de Informática

Campus do Bacanga, S/N, 65000-000 – São Luí[email protected]

Abstract. This paper presents an ongoing study on the viability of using Java servlets and COM componentsfor developing dynamic web sites containing geographic data. The maps are presented using TWF (TeCGrafWeb Format). The technologies employed are discussed and the context in which they are useful is described.

Resumo. Este artigo apresenta um estudo em andamento sobre a viabilidade do uso de Java servlets e objetosCOM para a criação de páginas dinâmicas que envolvam dados geográficos. Os mapas apresentados utilizam oformato TWF (TeCGraf Web Format). Faz-se uma abordagem das tecnologias utilizadas e apresenta-se umadescrição do contexto no qual elas são úteis .

1 Introdução

A popularização da Internet, o advento da Web e ocrescimento da importância dos Sistemas deGeoprocessamento em uma série de atividades apresentamnovas perspectivas para as pessoas que necessitam utilizardados geográficos. A união desses três fatores tornapossível a interação visual com os dados geográficos e umamaior acessibilidade a eles.

O usuário pode solicitar a visualização de mapas egerar gráficos a partir dos dados geográficos armazenados,os quais podem ser atualizados em tempo real junto com abase de dados. Em razão da expansão da Internet é possíveltrabalhar com os dados de praticamente qualquer lugar.

As diferentes maneiras utilizadas para publicar dadosgeográficos na Internet, em geral, recaem no modeloclássico da Internet (cliente/servidor). Essa arquitetura écomposta de um cliente com capacidade de exibição dedados geográficos e um programa de servidor de

geoprocessamento sendo executado juntamente com oservidor Web para responder às solicitações sobre os dadosgeográficos. A Figura 1 representa essa arquitetura.Tipicamente o cliente é um navegador (como Netscape ouIExplorer) que realiza solicitações a um servidor Webutilizando o protocolo HTTP (Hypertext Transfer Protocol).Quando o cliente realiza a solicitação de um mapa ou outraoperação sobre os dados geográficos, o servidor Web arepassa para o servidor de geoprocessamento, que atende àsolicitação e envia a resposta para o cliente através doservidor Web. A comunicação entre os dois servidores éfeita, em geral, através de interfaces como CGI (CommonGateway Interface), ISAPI (Internet Server ApplicationProgram Interface – Microsoft) e NSAPI (API do servidorNetscape).

Conforme descrito em Plewe[1], existem algumasmaneiras básicas para publicar o dado geográfico na Web:

• copiando a base de dados geográficos completaou parcialmente no cliente;

Page 85: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

• exibindo mapas estáticos em páginas HTML(Hypertext Markup Language);

• possibilitando ao cliente navegar na base demetadados;

• permitindo a navegação em mapas dinâmicos;

• permitindo ao cliente a realização de consultas eanálises sobre a base de dados no servidor, assim

como a navegação em mapas dinâmicos.

Figura 1 Arquitetura Típica para a Publicação deDados Geográficos na Web.

Entre as opções mais utilizadas para a publicação dedados geográficos na Web podemos citar o SpringWeb [2]MapGuide (AutoDesk) [3], o GeoMedia WebMap(Intergraph) [4] e o MapObjects Internet Map (ESRI) [5].

O SpringWeb é um representante da primeira maneirapara a publicação de dados geográficos na Web. Trata-se deum applet Java que roda no cliente e precisa da realizaçãode uma cópia local da base de dados, apresentando entãoum nível razoável de interação com esses dados. Entre asfunções disponibilizadas estão operações de visualizaçãocomo zoom, pan e navegação sobre os mapas, além dapossibilidade de consulta aos atributos de um objetogeográfico específico e a uma tabela com o conjunto dedados de uma determinada categoria de objetos.

O MapObjects Internet Map apresenta comodesvantagem principal o fato de publicar os mapas comoimagens, em geral nos formatos JPEG ou GIF, e suportarsomente as bases de dados nos formatos proprietários da

ESRI. Embora o usuário possa realizar consultas sobre osdados, em razão dos mapas estarem em formato raster não épossível navegar através de entidades gráficas.

O MapGuide utiliza um formato proprietário para osmapas a serem visualizados chamado SDF. No entanto,existe uma ferramenta para importar dados de uma série deoutras bases , como ArcView e MapInfo, que possibilita anavegação sobre os mapas, mas sem permitir gerá-losdinamicamente.

O Geomedia WebMap apresenta como principalvantagem a capacidade de publicar dados na Web dediferentes formatos, como MGE e ArcView Shapefiles, entreoutros. Neste programa os mapas são exibidos no formatoActiveCGM para clientes MSWindows ou como JPEG paraclientes em outros sistemas operacionais. Uma de suasprincipais desvantagens advém da considerável quantidadede programação em scripts CGI necessária para construiruma aplicação completa. Esses scripts acessam objetosCOM desenvolvidos como uma parte da versão completado Geomedia, os quais realizam as operações sobre osdados geográficos e geram os arquivos para a exibição dosmapas. Esse sistema permite a geração dinâmica de mapas ea navegação através deles.

Todos esses programas têm em comum o fato detrabalharem utilizando CGI, ISAPI ou NSAPI como interfacede comunicação entre o servidor de dados geográficos e oservidor de HTTP. Essas interfaces apresentam uma sériede desvantagens, que serão discutidas em seguida.

Neste trabalho será apresentado um estudo sobre aviabilidade da utilização de Java servlets e componentesCOM para o desenvolvimento de sites exibindo dadosgeográficos. Nesse estudo pretende-se utilizar o formatoTWF (Tecgraf Web Format), desenvolvido por Gattass etall.[6], para a exibição dos mapas. A implementação daarquitetura aqui proposta se encontra em desenvolvimentono TeCGraf/PUC-Rio. Inicialmente serão apresentadas astecnologias utilizadas, destacando suas principaisvantagens e a razão de sua adequação para o tratamento doproblema. Em seguida é fornecido o contexto de utilizaçãodessas tecnologias para a publicação de dados geográficosna Web.

2 Java Servlets

Um servlet é um módulo (programa escrito em Java) que écarregado dinamicamente para atender às solicitações deum servidor Web, ou seja, é uma extensão acrescentada aoservidor que aumenta a sua funcionalidade. Os servidoresWeb respondem às solicitações dos usuários, geralmente,usando o protocolo HTTP através do envio de documentosescritos em HTML.

Cliente

Navegador da Web

Visualização

Servidor

ServidorHTTP

Programa GIS

de Interface

Base de Dados

Geográficos

Scripts

CGI

Solicitação Mapas, textos, etc.

Internet

Page 86: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Em linhas gerais, os servlets estão para os servidoresWeb assim como os applets (componente de um navegadorgráfico e não uma aplicação) estão para os navegadores,com a diferença que os servlets não possuem interfacesgráficas.

Os servlets podem ser carregados em diversosservidores, pois a API utilizada para escrevê-los usa apenaso ambiente da Máquina Virtual do servidor. O protocoloHTTP é o mais utilizado para a comunicação com o servidor.Os servlets podem ser usados para o processamento deformulários (HTML), interagir com bancos de dados, ou deuma maneira geral atuar como uma camada intermediária emuma arquitetura de três camadas, como apresentadoesquematicamente na Figura 2.

As principais alternativas para a montagem de páginasdinâmicas são as seguintes: CGI, APIs proprietárias, ASP eservlets.

CGI é um padrão de interface utilizado entre servidoresHTTP e programas para se comunicarem. O servidor executaum programa (chamado script) cujo resultado é entãotransmitido ao cliente. Normalmente, um script CGI geracomo resultado uma página HTML para ser exibida nonavegador. Os programas CGI são executados na máquinaonde está localizado o servidor Web. Eles recebem os dadosatravés de variáveis de ambiente e “entrada padrão” e ostransmitem de volta ao servidor através da “saída padrão”.Podem ser escritos em qualquer linguagem (C/C++, PERL,TCL, CGILua, entre outros). A principal desvantagem de seutilizar scripts CGI é que para atender a cada requisição dousuário o servidor Web precisa criar um novo processo(cada processo produz uma nova conexão com o banco dedados utilizado e o servidor Web tem que esperar até que osresultados lhe sejam enviados), o que resulta numa baixaeficiência. Outro ponto negativo é com relação à segurança,uma vez que os arquivos (scripts) não ficam inteiramenteprotegidos, pois devem ser armazenados nos sub-diretóriosCGI-bin do servidor. Mais uma grande desvantagem estárelacionada à baixa taxa de reutilização do código, emfunção das linguagens usadas para a programação. Paracriar um novo módulo, a única possibilidade de reutilizaçãoé o “copiar-colar”.

Muitos servidores Web incluem APIs proprietárias queexpandem a sua funcionalidade. Os exemplos maisdifundidos são a NSAPI (API do Servidor da Netscape), naqual os programadores podem criar módulos binários queirão acrescentar e/ou substituir elementos paraautenticação, autorização ou geração dinâmica deconteúdos, e ISAPI (Internet Server Application ProgramInterface – Microsoft), que tem como princípio básico criaruma DLL que é carregada no servidor quando o HTTP éinicializado e permanece instalada enquanto for necessária.Esta DLL irá gerenciar a conexão com a base de dados sem

a necessidade de se criarem novas conexões, como ocorrecom o CGI. O grande problema em adotar tais soluções éque elas são proprietárias, perdendo-se a portabilidade.Outro problema é que geralmente estas aplicações sãodesenvolvidas utilizando-se linguagens de programaçãocomo C ou C++, que podem interferir no bomfuncionamento do servidor Web.

Figura 2 Arquitetura de execução de um servlet.

A solução da Microsoft para a criação de páginasdinâmicas é o ASP (Active Server Pages). Ele fica embutidonas páginas HTML, não sendo pré-compilado. O servidorWeb processa um arquivo utilizando uma DLL (ASP.DLL)que irá interpretar os comandos ASP embutidos na páginaHTML. O grande problema desta solução é que ela estáligada a um tipo particular de servidor – o InternetInformation Server (IIS) – ou a alguma ferramenta queconsiga fazer a tradução do ASP antes de enviar a respostapara o cliente.

Segundo Goodwill[7], as principais razões que indicamo uso de Java servlets são as seguintes:

• Eficiência: a inicialização de um servlet é feita apenasuma vez, ou seja, após ele ser carregado pelo servidorWeb, as novas solicitações são apenas chamadas dométodo de serviço.

• Persistência: os servlets podem manter o estado entresolicitações.

• Portabilidade: eles são escritos usando Java e, por estemotivo, são portáteis, bastando utilizar o JVM (JavaVirtual Machine) do servidor, sem fazer uma alteraçãosequer no código-fonte.

• Robustez: Java possui um método bem definido para otratamento de erros que minimiza a perda de memóriapor alocações indevidas (garbage collector).

• Segurança: os servlets por si só herdam toda asegurança que é peculiar a um servidor Web, porém osJava Servlets também podem contar com o JavaSecurity Manager.

• Reutilização: como os servlets são escritos em Java,eles possuem as vantagens da utilização de uma

NavegadorServidor

Web

ServletSolicitação

Resposta

HTTP HTTP

Page 87: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

linguagem orientada a objetos, como a possibilidade dereutilização.

3 TWF

TWF (Tecgraf Web Format) é um formato dearmazenamento de dados criado para representar umdesenho que contenha linhas, regiões, textos e imagens quedeverá ser transmitido via Web.

O formato de arquivo TWF foi proposto por Ferreira etall.[8] com o objetivo de obter um arquivo vetorial queatendesse aos requisitos propostos pelo W3C (WorldWide Web Consortium)[9]. Esses requisitos definem umarquivo vetorial com capacidade de organização doselementos em camadas, exibição de dados raster,tratamento de sistemas de coordenadas e possibilidade deinteração com o usuário para operações de zoom, pan,seleção de objetos, tratamento de eventos, entre outras.Essa proposta foi estendida por Gattass et all.[6] parasuportar a exibição de mapas na Web.

Um arquivo TWF é composto de um cabeçalho e umasérie de camadas. Cada camada é composta por funções ecada função possui um único identificador e um númerovariável de argumentos.

A representação de mapas segundo esse formatobaseia-se em dois processos: codificação dos elementosgeométricos do mapa em um arquivo e interpretação doarquivo.

O processo de codificação realiza as seguintesoperações: quantização das coordenadas, simplificação daspolilinhas, codificação das coordenadas e compressão. Poroutro lado, o processo de interpretação do arquivo consistede somente dois passos: descompressão e interpretaçãodas primitivas.

Existem duas ferramentas para a geração de arquivosTWF: uma para programadores e outra para usuários finais.A ferramenta para programadores é uma biblioteca defunções escrita em ANSI-C. Para usuários finais foidesenvolvida uma extensão do Geomedia, baseada natecnologia COM, que exporta dados no formato TWF,mapeando cada feature em uma camada do arquivo.

Estão disponíveis dois visualizadores para esseformato de arquivo: um applet baseado na plataforma Java1.2[10] e um plug-in desenvolvido em C com OpenGL[11].

Entre as principais vantagens desse formato dearquivo podemos enumerar:

• formato vetorial de arquivo, permitindo operações devisualização no cliente sem acessos ao servidor;

• geração de arquivos menores do que a maioria dos outrosformatos disponíveis, conforme demonstrado em Gattass etall.[6].

4 COM e DCOM

Os componentes de software são uma evolução natural nodesenvolvimento de software orientado a objetos,possibilitando o isolamento de pedaços de uma aplicaçãoem componentes separados, os quais podem serreutilizados por outras aplicações.

O Component Object Model (COM), da Microsoft,(Rogerson[12]) define um padrão binário para a integraçãode componentes, permitindo que objetos escritos em umalinguagem possam ser acessados a partir de outra.

A motivação da Microsoft para criar o COM partiu danecessidade de se estabelecer um padrão que permitisseque objetos criados por diferentes desenvolvedorespudessem interagir uns com os outros, de forma efetiva.

Esse modelo utiliza todos os conceitos básicos deorientação a objetos: encapsulamento, herança ereutilização. De uma forma geral, um objeto COM respondea uma série de métodos que serão utilizados pelos clientes.

As aplicações interagem umas com as outras ou com osistema através de um conjunto de chamadas de funções oumétodos, que são conhecidas como interface. Esta deve serdesenvolvida de forma que possa ser reutilizada em várioscontextos.

O modelo DCOM (Distributed Component ObjectModel) é uma extensão do modelo COM para suportar acomunicação entre objetos em computadores distintos, sejaatravés de uma rede ou mesmo da Internet. Com o DCOM, aaplicação pode ser distribuída em vários locais de acordocom a conveniência do desenvolvedor e/ou do usuário. Éimportante ressaltar que o DCOM cuida dos detalhes deprotocolos de rede de mais baixo nível, liberando odesenvolvedor para que este centralize seus esforços nabusca por soluções mais rápidas e eficientes.

5 Arquitetura Proposta

Na arquitetura proposta, esquematizada na Figura 3, temosum cliente (navegador) se comunicando com um servidorWeb através de requisições no protocolo HTTP, as quaissão respondidas pelo servidor com o envio para o cliente deum arquivo HTML com os dados solicitados.

Em um ambiente Web para geoprocessamento édesejável que as páginas HTML sejam geradasdinamicamente em uma aplicação (Servidor de DadosGeográficos) integrada ao servidor Web. Existem váriosmecanismos para realizar a integração entre essa aplicação eo servidor, como já foi visto. Na arquitetura proposta estásendo utilizado o mecanismo de Java Servlets. Com eleescrevemos um programa Java que é chamado pelo servidorWeb para tratar as solicitações enviadas pelo cliente. Entreoutras vantagens, os servlets possibilitam o acesso àsfacilidades de interconexão oferecidas por Java e a bases de

Page 88: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

dados relacionais através do JDBC, facilidades parareutilização e modularidade e a perspectiva de ganhos dedesempenho em razão de não precisar criar um novoprocesso para atender cada uma das solicitações do cliente.Assim, o servlet funcionará como a aplicação que atenderáàs solicitações dos clientes, através do servidor Web, egerará dinamicamente as páginas HTML para a publicaçãodos dados geográficos, exercendo um papel de mediadorentre o cliente e os dados geográficos.

Figura 3 Arquitetura Proposta.

Para acessar os dados geográficos e responder asolicitações como a geração de um mapa ou a realização eexibição de uma consulta espacial ou de uma operação deinterseção entre objetos geográficos, o servlet precisa deuma biblioteca de objetos que lhe permita realizar essasoperações. Essa biblioteca é disponibilizada pelo Geomediacomo um conjunto de objetos COM, os quais expõem umaparte de sua funcionalidade. Como principal vantagem dautilização desses objetos podemos citar o acesso adiferentes bases de dados, como MGE e ArcView.

Para a transmissão e exibição dos mapas no cliente foiescolhido o arquivo TWF, por se tratar de um formatovetorial, compactado e que disponibiliza operações devisualização (pan, zoom, etc.) no cliente. Além disso, esseformato vetorial é aberto, estando disponível na Web tantoa proposta do formato como plug-ins e applets paravisualizá-lo, o que permite ter clientes em qualquer sistemaoperacional. A biblioteca para a geração desses arquivos, apartir de bases acessáveis pelos objetos Geomedia, estádisponível como um objeto COM.

Um importante aspecto nesta arquitetura que estásendo proposta é a comunicação entre o servlet escrito emJava e os objetos COM, possivelmente rodando emmáquinas distintas. A Microsoft estendeu suaimplementação da Máquina Virtual Java para permitir umaintegração automática entre Java e COM. Assim, um objetoCOM pode ser chamado diretamente de Java e os objetosimplementados em Java são disponibilizados como objetosCOM. Essa solução possui a desvantagem de exigir que oservlet esteja rodando uma Máquina Virtual Java, que não éo padrão.

Na nossa proposta optamos por realizar essacomunicação através do J-Integra[13], uma ferramenta deintegração desenvolvida pela Linar Ltda. Ela se comunicacom os objetos COM utilizando o DCOM (DistributedCOM), que se baseia em uma camada de RPC, a qual realizachamadas TCP/IP para efetivamente completar acomunicação. Em resumo, no nível mais baixo o J-Integrausa as classes padrões de acesso à comunicação em redeoferecidas pela linguagem Java, o que garante aportabilidade da solução.

Para o programador do servlet, a solução com o J-Integra possibilita que os componentes COM sejamtratados como objetos Java puros, apresentando aspropriedades, os métodos e os eventos do objeto COMcomo propriedades, métodos e eventos Java.

A partir da leitura de bibliotecas que contenhaminformações das classes e interfaces dos objetos COM, umaferramenta distribuída com o J-Integra – com2java – gera osproxies necessários para a ligação entre COM e Java, ouseja, arquivos que contenham as classes em Javaequivalentes aos componentes COM. Podemos entenderestas classes geradas como um wrapper para os objetosCOM. Essas bibliotecas podem estar explicitamentedefinidas em arquivos com extensão olb ou tlb, e algumasvezes as informações estão escondidas em arquivosexecutáveis ou em DLLs.

No desenvolvimento deste sistema já foi implementadoum servlet que, sem a utilização de objetos COM, gerapáginas HTML com mapas previamente gerados no formatoTWF. A Figura 4 mostra uma página produzida com esseservlet, que possui capacidade de conexão direta com o

Cliente

Navegador Web

Visualização

HTML

Plug-in TWF

Applet TWF

Servidor

(Qualquer plataforma)

Servidor deWeb

Objetos

Geomedia

Base de Dados

Geográficos

Servlet

DCOMWindows

HTTP Internet

Page 89: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

banco de dados associado ao mapa para a realização deconsultas convencionais a bancos de dados. Atualmenteestá sendo desenvolvido o empacotamento dos objetosCOM em classes Java, utilizando a ferramenta com2java doJ-Integra. Isso é necessário para a geração dinâmica dosmapas a partir da base de dados acessável pelo Geomedia.

Figura 4 Exibição de Mapa em TWF com servlet.

Agradecimentos

Tecgraf é um laboratório financiado principalmentepela PETROBRÁS.

Referências

[1] Plewe, B. GIS ONLINE: Information Retrieval,Mapping, and the Internet. ONWORD Press, 1997.

[2] SpringWeb.

www.dpi.inpe.br/springweb/springweb.html

[3] MapGuide. www.mapguide.com

[4] GeoMedia Web Map.

www.intergraph.com/software/geo_map/

[5] MapObjects Internet Map Server.

www.esri.com/base/products/internetmaps/

[6] Gattass, M.; Ferreira, C. C. F.; Vilar, A. S.; Glasberg, M.“Efficient Map Visualization on the Web” . Geoinfo’99,Campinas, São Paulo, 1999.

[7] Goodwill, J. Developing Java Servlets – TheAuthoritative Solution. Sams Publishing, 1999.

[8] Ferreira, C. C. F.; Gattass, M.; Figueiredo, L. H. “UmEstudo Sobre Arquivos Vetoriais para a Visualização deMapas na Web” . GIS Brasil 99 – V Congresso e Feira Parausuários de Geoprocessamento da América Latina,Salvador, Bahia, 1999.

[9] World Wide WebConsortium Requeriments.

www.w3.org/Graphics/ScalableReq

[10] TWF Applet. www.tecgraf.puc-rio.br/twf/applet/

[11] TWF Netscape Plug-In.

www.tecgraf.puc-rio.br/twf/plugin/

[12] Rogerson, D. Inside COM . Microsoft Press, 1997

[13] J-IntegraTM. www.linar.com

Page 90: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Uma Metodologia para Geracao de Modelos de Elevac¸ao a partir de Curvas de Nıvel

ROBERTO DEBEAUCLAIR SEIXAS LUIZ HENRIQUE DEFIGUEIREDO CLAUDIO ANTONIO DA SILVA

PAULO CEZAR PINTO CARVALHO

IMPA–Instituto de Matem´atica Pura e AplicadaVISGRAF–Laborat´orio de Visualizac¸ao e Computac¸ao Grafica

Estrada Dona Castorina 110, 22460-320 Rio de Janeiro, RJ, Brasillhf,tron,cads,[email protected]

Abstract. Modelos digitais de terrenos baseados em elevac¸ao sao muito utilizados e possuem in´umeras aplicac¸oes.Portanto, t´ecnicas que possibilitem a convers˜ao de outras representac¸oes para modelos de elevac¸ao sao extrema-mente importantes. Neste trabalho, apresentamos uma metodologia em desenvolvimento para gerac¸ao autom´aticade modelos de elevac¸ao a partir de curvas de n´ıvel, com uma resoluc¸ao refinada de acordo com a necessidade dousuario. Alem disso, ´e apresentada uma breve descric¸ao dos problemas envolvidos nesta metodologia.

1 Introduc ao

Ha grande demanda por modelos digitais de terreno base-ados em elevac¸ao (DEM, Digital Elevation Models) e por-tanto e importante a convers˜ao de outros modelos de ter-reno paraDEM. Um grande volume de dados de terrenoesta dispon´ıvel na forma de curvas de n´ıvel, principalmenteos obtidos manualmente a partir de fotos a´ereas [2]. O ob-jetivo desse trabalho ´e estudar algoritmos de convers˜ao dedados de terreno em curva de n´ıvel paraDEM.

Uma tecnica muito usada para convers˜ao paraDEMe amostrar as curvas de n´ıvel, triangular os pontos amos-trais, obtendo uma aproximac¸ao linear por partes do terre-no, quee entao amostrada numa grade regular, gerando umDEM [2, 6]. O principal problema com essa t´ecnicae queas duas amostragens efetuadas introduzem erros. Como re-sultado, nem sempre ´e poss´ıvel capturar todas as feic¸oesimportantes do terreno. Um efeito disso seria a aparic¸ao deabruptas declividades no terreno.

Neste trabalho, propomos estudar o desempenho de al-goritmos de interpolac¸ao deDEM diretamente a partir dascurvas de n´ıvel. Em particular, pretendemos focar em algo-ritmos “naturais”, baseados em evoluc¸ao geom´etrica (usan-do morfologia matem´atica [1]) ou pseudo-f´ısica (usandoequac¸oes diferenciais parciais [6]), que s˜ao os mais ade-quados a esse tipo de problema, por produzirem superf´ıciesmais suaves. Esse estudo vai usar dados reais de altaresolucao, como subs´ıdio para a implantac¸ao de um bancode dados de modelos de terrenos cobrindo todo o territ´orionacional, um projeto do Minist´erio da Ciencia e Tecnologia.

O objetivo deste trabalho ´e descrever umpipelinecom-pleto para a convers˜ao de dados de curvas de n´ıvel, arma-zenadas em formato digital vetorial, para um modelo deelevacao final, com resoluc¸ao definida pelo usu´ario. Ape-sar da etapa de interpolac¸ao de alturas ser naturalmentea mais importante nessepipeline, e tambem importante a

Figura 1: Exemplos de curvas de n´ıvel.

interpretac¸ao dos dados originais, cuja qualidade e proces-so de aquisic¸ao estao fora do nosso controle.

2 Descricao do problema

Discutiremos o problema numa forma mais abstrata de mo-do a identificar os principais pontos a serem atacados, aindasem uma formulac¸ao rigorosa.

Feita a resalva acima, os dados do problema podemser descritos da seguinte forma:E dado um conjunto decurvas poligonais simples e fechadas, representando as cur-vas de n´ıvel de um terreno (Figura 1). Freq¨uentemente, ´edado tamb´em um conjunto depontos notaveis, com cotasassociadas a cada ponto. Algumas das curvas tˆemcotasas-

Page 91: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 2: Envolt´orias das curvas de n´ıvel da Figura 1.

Figura 3:Arvore das curvas da Figura 1.

sociadas a elas, mas nem todas. Tipicamente, um mapa denıvel contem curvas correspondentes a n´ıveis de20 em20

metros, mas somente as curvas correspondentes aos n´ıveismultipos de100 sao explicitamente cotadas.

O problema ent˜aoe, a partir dos dados acima, calculara altura de todos os pontos numa grade regular posta sobreo terreno. O modelo de elevac¸ao (DEM) que queremos ´edado pelo conjunto dos valores dessas alturas, organizadosem forma matricial.

Como nem todas as curvas de n´ıvel estao cotadas, oprimeiro problema que aparece ´e determinar as cotas dascurvas nao cotadas. Naturalmente, a intenc¸ao de quem fezo mapae que ele n˜ao seja amb´ıguo, istoe, que seja poss´ıveldeduziras cotas que faltam.

3 Arvore Topol ogica de Alturas

Como mencionado anteriormente, a maioria das curvasem mapas de curvas de n´ıvel (isolinhas) n˜ao possueminformacao de altura associada [5]. Contudo, baseado naanalise das que possuem tal informac¸ao, fornecida atrav´esde textos espac¸ados em intervalos regulares, e no conheci-mento previo do incremento adotado entre as curvas, porexemplo de20 em 20 metros, pode-se deduzir a cota dascurvas restantes. Por´em, este procedimento “visual” de in-terpretar os mapas de curvas de n´ıvel nao pode ser imple-mentado diretamente no computador.

Para obter uma soluc¸ao autom´atica, desenvolvemosuma tecnica de ordenac¸ao hierarquica das curvas baseadanas relac¸oes de inclus˜ao das envolt´orias do seu contorno(bounding-box), como ilustrado na Figura 2. A partir dessaarvore, e da classificac¸ao (mae, filha ou irm˜a), podemos efi-cientemente definir as cotas das curvas, mesmo as que n˜aopossuem tal informac¸ao.

Desta forma, classificamos uma curvaA como sen-do filha, ou seja, interna e de n´ıvel superior, de outra cur-va B, quando a curvaA possui sua envolt´oria completa-mente contida na envolt´oria da curvaB. Neste caso, di-zemos queB e mae deA e queA e filha deB. Quandoas curvas n˜ao possuem relac¸ao de mae e filha (contido oucontem) entre suas envolt´orias, dizemos que tais curvas s˜aoirmas. Apos essa classificac¸ao, temos as curvas organiza-das hierarquicamente em uma ´arvore de alturas (Figura 3).

E importante observar que devido `a estrutura utilizadana construc¸ao daarvore topol´ogica, basta que a altura dequalquer n´o seja identificada, para que todas as demais al-turas sejam determinadas. Por exemplo, podemos dizer quea altura da raiz da ´arvore se encontra ao n´ıvel do mar.

Embora essa t´ecnica parec¸a ser coerente e exata, o tes-te de envolt´oria naoe suficiente para classificar corretamen-te uma curva como sendo filha de outra em todos os casos,como mostra a Figura 4. Assim, verificou-se a necessida-de de acrescentar ao teste de filho por envolt´oria um testeadicional baseado em ponto-em-poligono para garantir umacorreta classificac¸ao [4,7].

4 Interpolacao Morfol ogica

O principal problema na gerac¸ao de mapas de altura a partirde curvas de n´ıvel e determinar os dados de alturaentreascurvas. Este fato nos sugere imediatamente a necessidadede algum m´etodo de interpolac¸ao, de modo que a partir deduas curvas adjacentes possamos determinar a altura exa-ta entre elas. Embora este racioc´ınio esteja correto, n˜ao equalquer m´etodo de interpolac¸ao que pode ser utilizado.

Os metodos de interpolac¸ao aritmeticos mais comunsnao podem ser usados visto que n˜ao conseguem resolvercasos que aparecem frequentemente nas representac¸oes porcurvas de n´ıvel. Como exemplo, considere a Figura 5,

Page 92: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 4: Exemplo de falha no teste de envolt´orias.

Figura 5: Interpolac¸ao aritmetica para curvas adjacentes.

onde temos duas curvas adjacentes de mesma altura. Ainterpolacao entre tais curvas seria dada pela m´edia das al-turas, ou seja, o resultado seria que o ponto m´edio entre ascurvas teria a mesma altura, o que geraria uma incoerˆencia.

Desta forma, focalizamos nossos estudos em ummetodo baseado em evoluc¸ao geom´etrica, usando morfo-logia matem´atica [1]. Neste m´etodo, as curvas existentessao forcadas a se expandirem naturalmente (usando o ope-rador de dilatac¸ao) ate colidirem umas com as outras. Naregiao da colis˜ao, acaba-se por definir novas curvas que s˜aoo resultado da interpolac¸ao entre as curvas originais, coma altura determinada pela m´edia aritmetica das alturas des-tas curvas. Tal t´ecnica mostrou-se natural e eficiente; osresultados podem ser vistos na Figura 9.

5 Detalhes de Implementac¸ao

A metodologia adotada para a interpolac¸ao de um modelode elevac¸ao a partir das curvas de n´ıvel requer as seguintesetapas bem definidas ilustradas na Figura 6.

1. Leitura das curvas de n´ıvel;

2. Classificac¸ao das curvas lidas;

3. Fechamento das curvas abertas;

4. Insercao das curvas na ´arvore de alturas;

5. Atribuicao de alturas a todas as curvas;

6. Rasterizac¸ao das curvas;

7. Interpolac¸ao das alturas nos pontos intermedi´arios.

A primeira etapa consiste na leitura dos dados doterreno, que no nosso caso est˜ao em arquivos no forma-to DGN. O formatoDGN e um formato propriet´ario daINTERGRAPH e bastante utilizado em geoprocessamento,visto que pode ser utilizado para armazenar diferentes tiposde dados geogr´aficos. Essa etapa n˜ao e trivial pois o for-matoDGN possui uma estrutura complicada e n˜aoe com-pletamente documentado. Apesar disso, a documentac¸aoencontrada foi suficiente para lermos os arquivos de teste.

A segunda etapa promove uma filtragem inicial dosdados de modo a classificar as curvas quanto ao aspecto to-pologico: fechadas, abertas ou ponto cotado. A importˆanciadesta etapa ´e que nem todas as curvas podem ser inseri-das diretamente na ´arvore, o que somente deve ser feito pa-ra curvas cujas propriedades topol´ogicas estejam completa-mente especificadas, o que ´e valido apenas para as curvasfechadas. As curvas classificadas como abertas s˜ao sub-metidas ao processamento da etapa de fechamento, ondesao “completadas” (fechadas) e, em seguida, inseridas naarvore.

Para fins de otimizac¸ao, a primeira e a segunda eta-pas ocorrem simultaneamente: os dados s˜ao classificados `amedida que v˜ao sendo lidos.

Uma vez tendo as curvas classificadas, podemos in-serir diretamente na ´arvore as curvas fechadas, visto queestas possuem sua propriedades topol´ogicas bem definidas,na etapa de ordenac¸ao.

As curvas classificadas como abertas, mas n˜ao de fron-teira, sao submetidas a uma etapa de fechamento utilizan-do a tecnica classica de interpolac¸ao de Hermite [3]. Doisexemplos desse fechamento est˜ao ilustrados na Figura 8.

Uma vez fechadas, tais curvas fornecem informac¸aosuficiente para que todos os n´os daarvore possam ter suascotas corretamente atualizadas, pois a estrutura da ´arvorepermite que, a partir de uma altura determinada em um n´o,se chegue `as alturas dos outros n´os.

Desta forma, com a ´arvore completamente preenchidacom as curvas, rasterizamos as curvas de modo a poder apli-car a tecnica de interpolac¸ao de contornos usando morfolo-

Page 93: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 6: Principais etapas do processo.

gia matematica, diretamente no espac¸o da imagem. Comisso, completamos nossopipelinecom a etapa final, onde aimagem rasterizada (representac¸ao matricial do dado veto-rial), constitu´ıda por todas as curvas presentes na ´arvore,einterpolada, gerando com isso um mapa de alturas comple-tamente denso entre as curvas de n´ıvel ou com a densidadedesejada.

A separac¸ao dopipelineem etapas bem definidas per-mite que o desenvolvimento possa ser feito separadamentee somente integrado quando todas as partes estiverem sufi-cientemente testadas.

5.1 Problemas Encontrados

� Interpolacao linear nao e adequada para o problema,conforme discutido anteriormente.

� Curvas de fronteira: Como citado na Sec¸ao 3, proble-mas topol´ogicos, a representac¸ao por curvas de n´ıveldeve permitir que a altura das curvas n˜ao cotadas pos-sa ser deduzida a partir das curvas cotadas. Entretan-to, algumas curvas que ultrapassam os limites do mapapodem nos levar a interpretac¸oes incorretas dado o seucarater amb´ıguo, como mostra a Figura 7. Tais curvasforam denominadas de fronteira e, no momento, n˜aoestao sendo tratadas. Esperamos que elas possam serresolvidas normalmente quando compostas em outromapa adjacente que a complete.

� Dificuldade de Fechamento: As curvas originalmentecotadas vˆem dividida em partes n˜ao cont´ınuas, devi-

Figura 7: Problema de ambig¨uidade das curvas de fronteira.

do a restric¸oes no formatoDGN ou a forma como oarquivo foi gerado originalmente. Essa divis˜aoe feitapara plotar umlabel correspondente `a altura, ao lon-go da curva. Isso dificulta o processo de identificac¸aode quais partes formam cada curva. Por´em, como jacitado, as curvas cotadas tˆem cota m´ultipla de100, oque nos permite assumir que elas se encontram entrecurvas fechadas (espac¸adas em saltos de20 em20 me-tros). Utilizando tal informac¸ao, podemos determinaras partes que est˜ao entre determinados saltos e assum´ı-las como fazendo parte da mesma curva. Assim, bastaordena-las e aplicar a t´ecnica de fechamento.

Page 94: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 8: Exemplos de fechamento.

6 Conclusao

A tecnica de interpolac¸ao de contornos baseada em morfo-logia matem´atica [1] mostrou-se bastante eficiente e precisapara os dados analisados. A Figura 9 mostra alguns passosno processo de gerac¸ao de curvas intermedi´arias utilizandoos operadores morfol´ogicos.

Embora o problema em quest˜ao seja bem definido—isto e, converter representac¸oes de modelos de terrenosbaseadas em curvas de n´ıvel para modelos de elevac¸ao—foi poss´ıvel comprovar que nem todos os m´etodos deinterpolacao sao aplicaveis a dados deste tipo, tal comofoi discutido anteriormente para os m´etodos de interpolac¸aoaritmetica na Sec¸ao 4.

Assim, como alternativa, testamos a soluc¸ao baseadaem operadores morfol´ogicos que promove curvas interme-diarias mais naturais e coerentes com os terrenos originais.Os resultados obtidos mostraram-se precisos o suficientepara comprovar que a t´ecnicae eficiente e eficaz, como po-de ser visto na Figura 9.

Embora os resultados apresentados at´e o presente mo-mento sejam satisfat´orios, e importante salientarmos queo trabalho encontra-se em desenvolvimento e que aindacontara com o tratamento do problema de ambig¨uidade noprocessamento das curvas de fronteira. Al´em disso, ´e ne-cessario incluir um recurso de ajuste de resoluc¸ao do ma-pa de elevac¸ao, de modo que o usu´ario possa escolher aresolucao que melhor se adapte `as suas necessidades.

Pretendemos tamb´em comparar o desempenho dometodo de interpolac¸ao morfologica com m´etodos deinterpolacao basedos em equac¸oes diferenciais parciais [6].Para isso, vai ser necess´ario tambem desenvolver procedi-

mentos para comparac¸ao quantitativa dos resultados obti-dos, alem da comparac¸ao visual.

Referencias

[1] W. Barrett, E. Mortensen, and D. Taylor. An ImageSpace Algorithm for Morphological Contour Interpo-lation. InProceedings of Graphics Interface’94, pages16–24, 1994.

[2] G. Camara, M. A. Casanova, A. S. Hamerly, G. C. Ma-galhaes, and C. M. B. Medeiros.Anatomia de Sistemasde Informac¸oes Geografica. X Escola de Computac¸ao,1996.

[3] G. Farin. Curves and Surface for Computer Aided Ge-ometric Design. Academic Press, Inc, 1988.

[4] J. D. Foley, A.van Dam, S. K. Feiner, and J. F.Hughes. Computer Graphics: Principles and Practi-ce. Addison-Wesley, 1990.

[5] M. Garland and P. S. Heckbert. Fast Poly-gonal Approximation of Terrains and Height Fi-elds. Technical Report CMU-CS-95-181, Scho-ol of Computer Science, Carnegie Mellon Univer-sity, 1995. http://graphics.cs.uiuc.edu/˜garland/CMU/scape/scape.pdf.

[6] M. B. Gousie and W. R. Franklin. ConvertingElevation Contours to a Grid. InSDH’98, Van-couver, 1998. http://www.ecse.rpi.edu/Homepages/wrf/research/p/contour.pdf.

[7] F. P. Preparata and M. I. Shamos.Computational Geo-metry: An Introduction. Springer-Verlag, 1985.

Page 95: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figura 9: Etapas do resultados.

Page 96: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Cartografia e Sistemas de Informação Geográfica comoSistemas Semióticos: Uma Análise Comparativa

ALYSSON BOLOGNESI PRADO1

M. CECÍLIA C. BARANAUSKAS

CLÁUDIA M. BAUZER MEDEIROS

Instituto de Computação – Unicamp{alysson.prado, cecilia, cmbm}@dcc.unicamp.br

AbstractSeveral improvements are noticed on Geographic Information Systems, motivated by the general trendsin information technologies, expanding their potential uses to domain experts. In that sense, GIS shouldconsider the user's familiarity with Cartography and its traditional way of representing naturalphenomena. Understanding the construction and interpretation of maps as communication activities, thispaper evaluates the expression power of GIS relatively to their cartographic elements, based on aSemiotic approach. Results obtained from the comparison between Cartographic and GIS semioticsystems show a great difference in the potential for communication for each one of the domains.

SumárioSistemas de Informação Geográfica têm experimentado avanços importantes motivados pelas novastecnologias de informação, que também têm ampliado seu potencial de uso para além dos especialistas nodomínio. Nesse sentido, os SIGs deveriam considerar a familiaridade do usuário com a Cartografia e suaforma tradicional de representação dos fenômenos naturais ou construídos pelo homem. Entendendo aconstrução e interpretação de mapas como atividades de comunicação, este trabalho visa avaliar o poderde expressão de SIGs no que se refere à representação de elementos cartográficos, a partir da abordagemSemiótica. Resultados obtidos da comparação dos sistemas semióticos da Cartografia e dos SIGsconstatam uma grade diferença no potencial de comunicação em cada um dos domínios.

1 Este trabalho tem o apoio da FAPESP (processo 98/15294-8) e PRONEX II MCT - SAI.

1.Introdução

O desenvolvimento da tecnologia de informaçãona última década tem oferecido oportunidades demelhorar dramaticamente o processo de tomada dedecisões e resolução de problemas no domínio geo-espacial. Segundo Egenhofer (1999), embora os Sistemasde Informação Geográfica (SIGs) tenham alcançado umcrescimento e popularidade sem precedentes na últimadécada, para torná-los uma contribuição a comunidadesmais amplas de usuários, mudanças significativas dedesign devem ocorrer. Em especial, uma nova tendência éacoplar SIGs a dispositivos de telefonia móvel e GPS,criando os Spatial Information Appliances (SIA),assistentes pessoais do futuro para problemas queenvolvem o espaço, movendo a tecnologia do desktoppara o trabalho de campo e da mão dos cientistas eprofissionais especializados para as dos cidadãos emgeral.

Problemas sérios de usabilidade e gaps entretarefas do usuário em implementações de SIG têm sidoreportados em literatura recente. Câmara et al. (1999)argumentam que, apesar dos avanços ocorridos namodelagem de dados, é o design da interface de SIG quedesempenha um papel crucial em determinar a aceitaçãodo sistema. Davis & Laender (1999) discutem a utilidadedos SIGs entre diferentes grupos de usuários, cada qualcom seu conjunto particular de aplicações e suasnecessidades específicas no que diz respeitoprincipalmente à representação dos objetos.

Ainda segundo Davis & Laender (1999, pág. 36)“a representação de um objeto espacial não determinacompletamente sua aparência visual, ou seja, a formasegundo a qual o objeto será apresentado ao usuário, natela ou em papel. A cada representação correspondemuma ou mais apresentações, alternativas de visualizaçãoadequadas para comunicar o significado dos dadosgeográficos de acordo com as necessidades da aplicação”.

Page 97: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

SIGs tentam preservar a familiaridade dousuário com a apresentação tradicional do mundo.Dominar o processo de representação da realidade atravésde mapas há muito tem sido objeto de estudo e pesquisa.A necessidade do homem de compreender o universo queo cerca exige que a cartografia, enquanto “arte deconceber, levantar, redigir e divulgar mapas” (Joly, 1990,pág. 7), seja cada vez mais eficiente.

Baseamos este trabalho na hipótese de que aconstrução e interpretação de mapas são atividades decomunicação sobre fenômenos e fatos do mundo real,tanto naturais quanto construídos pelo homem. Nestecontexto, o objetivo do trabalho é avaliar o poder deexpressão de Sistemas de Informação Geográfica no quetange a representação de elementos cartográficos, sob oponto de vista da Semiótica.

A metodologia empregada para documentar eavaliar os elementos constituintes de mapas foi baseadaem uma abordagem semiótica, tendo sido aplicada tanto amapas produzidos a partir da Cartografia tradicionalquanto aos produzidos por um SIG. Inicialmente, foramresgatados e classificados os elementos expressivos dodomínio da cartografia tradicional. A seguir, foramavaliados diferentes SIG e a simbologia que estesdisponibilizam para a geração de mapas, para verificar seas interfaces de tais sistemas disponibilizam elementosque possibilitem a comunicação cartográfica comeficiência comparável à dos mapas produzidos sem o usode SIGs. Esta análise permitiu constatar uma grandediferença no potencial de comunicação em cada um dosdomínios.

Este trabalho está organizado da seguinte forma:inicialmente apresentamos trabalhos relacionados àrepresentação visual cartográfica, objetivando umamelhor compreensão dos elementos cartográficos. Aseguir, apresentamos o referencial de semiótica utilizadopara a análise proposta. Na seção 4, analisamoscomparativamente os dados coletados dos domínioscartográfico e de Sistemas de Informação Geográfica.Concluindo, discutimos os resultados, mostrando umapossível interpretação e projeções de seu uso no design deinterfaces de Sistemas de Informação Geográfica.

2. Representações visuais em Cartografia

Existe um grande número de trabalhos voltadosao estudo da Cartografia e dos elementos utilizados naprodução de mapas, como por exemplo Barkowsky &Freksa (1997), Couclelis & Gottsegen (1997). A seguir,discutiremos trabalhos que se distinguem dos demais pelasua maior preocupação com o processo de percepção einterpretação das representações visuais.

2.1. O conceito de variáveis visuais

O trabalho de Bertin (1967) não se resume àCartografia, mas trata das representações visuais de ummodo geral. O autor coleta e analisa diversas simbologiasgráficas e, para cada uma, associa propriedadesperceptivas que se pode obter com sua utilização. Comoresultado, apresenta uma classificação dos dados a seremrepresentados de acordo com sua natureza geométrica:pontos, linhas e áreas, o que foi chamado de modos deimplantação. Por estar interessado na expressão no planodo papel, Bertin (1967, pág. 42) limita seu estudo arepresentações bidimensionais, desconsiderando tambémfenômenos de natureza temporal.

O ponto inicial do seu trabalho é a afirmaçãogeral de que a comunicação é feita por meio de marcas nopapel. A apresentação de um dado ocorre através devariações ou modulações de características dessas marcas,como sua forma, posição ou cor. Deste raciocínio surge alista das variáveis visuais: tamanho, valor (tons de umamesma cor), granulação, cor (matiz), orientação e forma,além da posição no plano bidimensional. Forma-se,assim, um conjunto de transformações que aplicadasisoladamente ou em conjunto seriam capazes detransmitir visualmente qualquer tipo de informação,respeitando-se as limitações que o próprio Bertin seimpôs – bidimensionalidade e atemporalidade. O quadroapresentado na Tabela 1 sintetiza as categorias devariáveis visuais estudadas por Bertin para os diversosmodos de implantação.

Para cada uma das variáveis visuais, sãodeterminadas as possibilidades de percepção da naturezaque se deseja imprimir aos dados:• associativa: uma variável visual é dita associativa

quando os dados por ela representados podem seragrupados de acordo com outras categorias,independentemente das variações provocadas poresta variável. Ex: ao representarmos em um mapaduas informações a respeito de cada cidade, comopopulação através do tamanho da mancha e atividadeeconômica principal através da forma (círculos paraagricultura, quadrados para indústria, triângulos paraoutros), seremos capazes de visualizar a distribuiçãopopulacional independentemente da atividadeeconômica, identificando regiões com manchasmaiores ou menores. Portanto a forma é uma variávelassociativa, suas variações podem ser tratadas deforma associada quando se analisa a outra variável(tamanho). Uma variável não associativa é ditadissociativa.

• seletiva: permite isolar espontaneamente todos oselementos pertencentes a uma mesma categoria,dentro do conjunto total dos signos representados.

Page 98: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Ex: ao vermos um conjunto de círculos de diferentescores somos capazes de separar visualmente todos osde uma só cor dos demais. A cor é portanto umavariável seletiva.

• ordenada: uma variável é ordenada quando seperceber uma seqüência natural nos dadosapresentados. Ex: diversos tons de cinza (valor), indodo mais claro ao mais escuro, podem ser percebidoscomo uma seqüência. Logo, valor é ordenado.

• quantitativa: uma variável é quantitativa quando épossível atribuir um valor ao elemento representado apartir da sua representação. Ex.: se uma figura é duasvezes maior que outra (tamanho), podemos dizer quea primeira representa um dado que tem duas vezes ovalor da segunda.

As variáveis visuais podem ou não conseguirtransmitir todas as propriedades perceptivas. A Tabela 2indica o resultado dos estudos de Bertin, atribuindo acada variável visual as propriedades perceptivas que elapermite.

Certas formas de representação não permitemdetectar determinadas características dos dados (itens embranco na Tabela 2). Por exemplo, o uso da cor (matiz)não é capaz de traduzir o caráter quantitativo de umarepresentação, pois não existe uma relação natural entrematizes e quantidades na mente do leitor de um mapa.Uma associação desse tipo só seria possível mediante acriação arbitrária de uma escala de cores ou legenda(Monmonier, 1991, pág. 150).

Tabela 1: Classificação das variáveis visuais de Bertin

Tabela 2: Propriedades perceptivas das variáveis visuais

Page 99: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Embora exista um esforço no sentido de criarcondições para que o leitor do mapa seja capaz deidentificar os diferentes elementos ou perceber seqüênciasnos dados representados, a abordagem de Bertin não levaem consideração o significado que certas variáveis, comoforma e granulação, podem sugerir ao leitor.

2.2. O conceito de alfabeto cartográfico

Ramirez (1993) coleta e analisa dados dodomínio cartográfico visando identificar os elementosbásicos com os quais mapas são construídos. Para isso,baseando-se na teoria de níveis lingüísticos de Chomsky(1972), decompõe sucessivamente e isola os componentesde mapas até obter um conjunto básico de elementos. Aeste conjunto (Figura 1), deu o nome de alfabetocartográfico. A seguir, definiu um conjunto de regras deutilização deste alfabeto, o que chamou de gramáticacartográfica.

Figura 1: o alfabeto cartográfico de Ramirez

As regras da gramática levam a elementossemelhantes às variáveis visuais de Bertin, ou seja, sãomodulações a serem aplicadas sobre o conjunto básico deprimitivas (alfabeto), através dos quais seriam obtidas aspossibilidades de representação para a construção demapas. Sobre um mesmo elemento original - digamos,uma linha - podemos combinar variações de cor,granulação (tracejado, por exemplo) ou tamanho(espessura) e com isso progressivamente construir mapas.

Ramirez considera os mapas como sendosentenças, conjuntos de elementos relacionados de modoa conter um significado específico: a descrição de umarealidade geográfica. Embora esta abordagem sirva ao seuobjetivo de permitir automatizar a construção de mapasao isolar seus elementos mínimos, a granularidade dadecomposição atingida é alta, gerando elementos por sidesprovidos de significado, o que não dá margem aoestudo dos fenômenos de comunicação que existemquando se constrói ou se interpreta um mapa.

2.3. Semântica cartográfica

Analogamente à abordagem de Ramirez, Pratt(1993) afirma existir muito em comum entre mapas eoutras formas de comunicação como linguagens naturaisescritas. Ambas as formas de expressão utilizam marcasde tinta sobre o papel, através de um códigopreestabelecido. Entretanto, ressalta que o que diferenciaos mapas é a sua característica geométrica e visual, o que

os aproxima dos objetos que se deseja representar nosentido de se utilizar das características de percepçãodestes para representá-los.

A análise feita por Pratt tem como objetivo adeterminação da semântica cartográfica (MapSemantics), ou seja, obter um conjunto de regras devalidação do conteúdo de um mapa. Para tanto, lançamão da definição de Schlichtmann (1985), em que cadaelemento cartográfico pode ser decomposto em doiscomponentes: o “substantivo” e a “localização”. Aoprimeiro cabe transmitir a natureza do objetorepresentado (citando os exemplos do próprio Pratt, umacasa, uma igreja ou um poço) através de suaspropriedades visuais (ainda seguindo o exemplo, �, < e{, respectivamente). Já o segundo transmite alocalização do objeto no mundo real, com base nalocalização no mapa do elemento que o representa.

Para que o leitor de um mapa seja capaz deinterpretar os pares substantivo e localização X+(x,y)presentes no mapa, é preciso decodificar a realidadegeográfica expressa por tais pares. Para isso, Pratconsidera necessárias duas funções: uma função deinterpretação simbólica I(X), que correlacione cadaelemento X do domínio cartográfico com o conjunto deentidades da realidade geográfica que se quer representare uma função de interpretação espacial µ (x,y) quecorrelacione os pontos da superfície (x,y) do mapa composições no espaço. Assim, a função I mapeia � com oconjunto de casas, < com o conjunto de igrejas, e assimpor diante, enquanto µ informa suas respectivaslocalizações (Pratt, 1993, pág. 80).

A determinação da validade de cada elementoX+(x,y) de um mapa ocorre ao verificarmos a existênciano mundo real de seu correspondente I(X)+ µ (x,y). Prattprossegue no sentido de determinar as condições devalidade do mapa como um todo, analisando asimplicações da ausência de símbolos em determinadaregião do mapa, a ambigüidade figura/fundo(figure/ground). O próprio Pratt, entretanto, indica quenão se aprofunda na descrição da função de interpretaçãoI(X), deixando de considerar formas de representaçãográficas como cor e textura (como as variáveis visuais deBertin), pois para seu objetivo é suficiente conhecer aexistência de I(X). No entanto, se pretendemos estudar oprocesso comunicativo de produção e interpretação demapas, é justamente nesta função que devemos nosconcentrar.

3. A Cartografia como um Sistema Semiótico

A ciência cartográfica sempre esteve atentaquanto à necessidade de utilização de elementos providos

Page 100: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

de significado, como nos indica Oliveira (1988, pág.109):

Um símbolo cartográfico [...] não pode abdicar,inteiramente, do seu caráter figurativo associativo,em favor do símbolo geométrico puro.[...] Um mapanão é - não se pode permitir que seja - umdiagrama meramente geométrico, em que asdistâncias e as relações horizontais estejamcorretas; deve, até certo ponto, sugerir a aparênciado assunto.

Nosso trabalho adota a teoria semiótica comoreferencial para análise de representações cartográficas,pela clareza com que trata as relações de significaçãoentre os elementos representantes e representados. ASemiótica se ocupa do estudo dos signos. Um signo é“algo que está para alguma coisa para alguém” (Peirce,1990, pág. 46; Santaella, 1996). Peirce, um dos teóricoscuja obra serve de embasamento para este trabalho, defineo signo como sendo uma relação triádica entre um objeto,um representamen e um interpretante ( Figura 2).Objeto é a parte do signo a qual se quer referenciar (porexemplo, a existência de uma árvore em um determinadolocal). Já o representamen é a entidade que efetivamenteé utilizada na tentativa de comunicação, com a intençãode representar o objeto (no mesmo exemplo, dado ummapa em papel do local, a presença de marcas de tinta na

forma ou mesmo simplesmente um × podem serrepresentamens da existência e localização da árvore). Oprocesso de significação ou semiose ocorre quando, ao seapresentar o representamen a uma mente pensante, nela éproduzida uma idéia que a remete ao objeto, idéia que échamada interpretante.

Figura 2: O signo de Peirce

Uma classificação geral dos signos proposta porPeirce os divide em ícones, índices e símbolos, de acordocom o tipo de relação existente entre o representamen e oobjeto. A importância do estudo dessa relação, conformesalienta Santaella (1989, pág 58), está no fato de ela ser a

base fundamental para se considerar o nível ou grau deinterpretabilidade do signo, isto é , seu potencialinterpretativo. A classificação de Peirce é apresentada aseguir:

• ícone: a representação se dá de uma forma direta, porsemelhanças das características perceptivas entreobjeto e representamen;

• índice: o representamen se associa ao objeto por umarelação natural de pressuposição ou dependência;

• símbolo: a associação é arbitrária, estabelecidasocialmente ou de forma imposta.

Além desta primeira classificação, maisdivulgada na literatura, Peirce propôs uma sub-classificação para os ícones (Peirce, 1972), cujorepresentamen passa a ser denominado hipo-ícone, e éclassificado em:

• imagem : reproduz as qualidades características doobjeto;

• diagrama: tem sua representatividade baseada nasrelações entre as partes do objeto referenciado;

• metáfora: expressa “o caráter representativo de umrepresentamen” (Peirce, 1972, pág. 117) através deum paralelo com algo diverso.

A Tabela 3 ilustra esta taxonomia, através de

exemplos que extraímos da própria Cartografia. A seta noeixo vertical indica o sentido em que tanto a capacidadede significação (ou seja, seu poder representativo) como aespecificidade de um signo aumentam.

Imagens são signos com um grau maior deespecificidade, ou seja, podem ser utilizados comorepresentamens de um conjunto menor de objetos. Alémdisso, estes signos carregam em si um maior poder designificação, pelo fato de sua relação com o objetorepresentado ser mais perceptível e imediata - são “auto-referentes” (Santaella, 1989, pág. 57). Caminhando emdireção ao extremo oposto, temos signos cada vez maisdesprovidos de relação direta entre representamen eobjeto, sugerindo progressivamente uma interpretaçãomenos imediata. Por isso, são signos com um grau deespecificidade menor, permitindo que a eles sejaassociada uma gama maior de significados.

Page 101: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Ícone imagem Extraído deAgostini (1972),tabela VIII

diagrama

Cipreste

Agostini (1972),tabela VIII

metáfora

Lago intermitente

Oliveira (1988),pág. 110

Índice Agostini (1972),tabela XIV

Símbolo Martinelli(1991), pág. 58

Tabela 3: Uma ilustração da taxonomia de signos de Peirce em elementos cartográficos

Esta classificação peirceana de signos pode serusada como forma de traçar um perfil de um sistemasemiótico, ou seja, de um conjunto de signos em umcontexto em que possuem uma certa inter-relação eassumem uma determinada gama de significados.

Definimos compatibilidade entre sistemassemióticos como uma relação associativa baseada nadistribuição que os signos neles presentes apresentam noeixo acima citado. Dois sistemas semióticos seriamcompatíveis, ou seja, possuiriam grau deinterpretabilidade equivalente para um mesmo perfil deindivíduo interpretador, se os elementos expressivos queo constituem utilizam proporcionalmente as mesmasformas de significação.

4. O estudo dos sistemas semióticos daCartografia e de SIG

Com base na taxonomia de signos apresentadana seção anterior, procedeu-se a coleta e classificação dosdados referentes aos dois sistemas semióticos analisados.Foram utilizados livros e publicações voltadas para oensino de Cartografia, principalmente aqueles editadosantes do surgimento de SIG, procurando um maior graude independência entre os dados dos dois sistemassemióticos aqui estudados.

Em paralelo, foi feito o mesmo trabalho deanálise sobre interfaces de três Sistemas de Informação

Geográfica, para identificar os conjuntos de signosdisponibilizados para o usuário durante o processo deconfecção de mapas. Foram usados os SIG ArcView 3.0(http://www.esri.com), Idrisi 2.01 (http://www.idrisi.com)e Spring 3.2 (http://www.dpi.inpe.br/spring).

O método adotado para classificação dos signosem cada um dos sistemas semióticos estudados baseou-seno seguinte procedimento: na Cartografia pré-computacional encontramos a relação representamen-objeto explícita em descrições didáticas de como construirmapas e representar acidentes geográficos, vegetação,construções humanas, etc., bastando classificar estarelação de acordo com a taxonomia já descrita. Já para oconjunto de signos dos SIG dispúnhamos apenas dorepresentamen não existindo indicação, na interface dossoftwares, dos objetos com os quais o representamenestaria relacionado. A determinação da relaçãorepresentamen-objeto nesse caso considerou duaspossibilidades: em primeiro lugar, nos casos em queexiste elemento semelhante no domínio cartográfico,supomos para o signo do SIG a mesma classificação dadaao da Cartografia. No caso da inexistência de umelemento correspondente, procuramos identificar umconjunto de possíveis objetos com os quais orepresentamen poderia estar relacionado. A classificaçãofoi feita com base na relação representamen-objeto com omaior grau de especificidade (mais próximo de imagens).

Page 102: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Por exemplo, o signo do SIG ArcView poderiareferenciar apenas a presença de um hidrante (ícone),como o prédio do Corpo de Bombeiros, ou algo paracombate a incêndio (índice). Optou-se pela primeirainterpretação, pois ícone são de interpretação mais diretaque índices (Tabela 3).

Em alguns dos SIG analisados é dada ao usuárioa possibilidade de alterar e personalizar o conjunto inicialde signos, como os padrões de preenchimento de áreas noSpring, por exemplo. Isso não foi levado em consideraçãoem nossa análise; restringimo-nos somente aos elementosque por default estão disponíveis ao usuário, pois apersonalização não é disponível em todos os softwares, emesmo em um mesmo software podemos não conseguirfazê-la em todos os elementos (ponto, linha e área).

Apesar da importância das cores na construçãode mapas, já que são largamente utilizadas parasignificação, como nos informa Oliveira (1988, págs.109-111) ao sugerir o uso de verde para vegetação, azulpara hidrografia e castanho para relevo, seu uso não foiconsiderado neste trabalho. No passado, a produção demapas era limitada quanto ao uso de cores pordificuldades técnicas na impressão (Monmonier, 1991).Já os softwares analisados disponibilizam igualmentetodo o espectro visual (RGB), não se diferenciando daCartografia tradicional. Quanto ao uso adequado dasescalas de cores que são disponibilizadas pelos SIG, talproblema já foi abordado pelo trabalho de Bertin (1967).

Foram identificados e classificados 161 signosda literatura cartográfica e 143 dos SIG, e a partir destesdados gerada uma série de gráficos. O primeiro (Figura3) corresponde aos resultados da analise e classificaçãodos dados relativos à Cartografia tradicional. Podemosnotar a predominância de diagramas (36%) e símbolos(34%), demonstrando uma distribuição equilibrada entreos extremos do eixo. Ainda se agruparmos todo oconjunto de ícones, obtemos mais da metade dos signos(54%) utilizando para representação as característicasprimárias dos objetos representados, ou seja, nestesistema semiótico são freqüentes as representações maisimediatas, por meio das próprias características dosobjetos representados.

Já no conjunto de resultados da análise de SIGs(Figura 4) encontramos outra distribuição, com absolutamaioria de elementos classificados como símbolos (75%).Isso revela o caráter generalista deste sistema semiótico,por possuir signos de baixa especificidade. Tais signossão providos de pouco poder de significação, nãocarregando em si qualquer informação além daquela quelhe é atribuída por convenção. Com isso, torna-se menos

imediata a interpretação dos elementos que constituem omapa e, consequentemente, a leitura deste como um todo.

Figura 3: Gráfico da distribuição de signos daCartografia

Figura 4: Distribuição dos signos coletados em SIG

5. Discussão e conclusões

O presente trabalho contribui ao entendimentode representações visuais em Cartografia, como osapresentados na seção 2, ocupando-se do potencial designificação de representações cartográficas. Aabordagem focaliza a interpretação que o leitor de ummapa pode fazer de seus elementos visuais.

É desejável que a aparência visual doscomponentes do mapa seja adequada ao uso e à categoriade usuário da aplicação. Na produção cartográficaconvencional, o processo é baseado no conhecimentoempírico do cartógrafo, incluindo seu senso estético. Aanálise comparativa dos sistemas semióticos daCartografia e de SIGs mostra que o segundo ainda étecnocêntrico, o que pode ser explicado pela herança dasrestrições iniciais da tecnologia de interfaces gráficas(palhetas genéricas de símbolos ocupam menos espaço eservem a um número maior de objetivos na criação demapas no computador).

Sistemas de Informação Geográfica podem serusados para produzir infinitas interpretações do mundo

Page 103: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

real e apresentá-las como mapas. Neste caso, uma parteda interface é dedicada a permitir aos usuários definir suainterpretação (ativando módulos de análise espacial) e asegunda parte à apresentação cartográfica. Poderíamosser levados a pensar que limitações de escolha dos signospara construção de mapas deveriam ser impostas para nãosobrecarregar a interface e confundir o usuário leigo. Éfundamental termos em mente que o perfil dos usuáriosde SIG tem se deslocado do especialista em computaçãopara o especialista em outros domínios do conhecimentoque necessitam manipular dados espaciais. Assim, apesarde o usuário de SIG poder ser alguém leigo emCartografia – tanto a tradicional quanto a digital – eletoma também a posição de usuário do mapa que seráproduzido. Ou seja, a análise, processamento eapresentação dos dados geográficos deixam de ter aintermediação do especialista em computação e em SIG.Portanto, torna-se desejável que esse SIG disponibilize aousuário elementos que facilitem a construção de um mapacuja futura leitura e interpretação para tomada dedecisões seja o mais natural e imediata possível.

É importante destacar que, embora o sistemasemiótico da Cartografia tenha apresentado resultadosmais favoráveis à interpretabilidade dos signosconstituintes dos mapas do que os SIGs, a informaçãogeográfica no computador pode ser muito mais rica doque a informação cartográfica convencional, seexploradas as possibilidades da mídia do computador, enão permanecendo meramente uma duplicação digital demapas já existentes. A produção de mapas via SIG é,assim, um passo adiante da cartografia eletrônica“padrão”, que se limita a reproduzir mapas previamentecriados usando a cartografia tradicional. Estes sistemaspermitem a construção de mapas a partir de dados brutosobservados no mundo e armazenados em bancos de dadosgeográficos. Desta forma, a partir de um conjunto básicode dados, uma infinidade de mapas totalmente diferentespode ser produzida, adequando-se à variedade deaplicações que necessitam de informações geográficas.

Referências

Agostini, Aminto (1972). Disegno Topografico, Ed.Ulrico Hoepli, Milão.

Barkowsky, Thomas & Freksa, Christian (1997).“Cognitive Requirements on Making andInterpreting Maps”, Lecture Notes in ComputerSciences 1329, Springer-Verlag.

Bertin, Jaques (1967). Semiologie Graphique: lesdiagrammes, les reseaux, les cartes, Gaurhiers-Villars, Paris.

Câmara, Gilberto et al. (1999). “Handling Complexity inGIS Interface Design”, anais do Geo-Info 1999 – IWorkshop Brasileiro de Geoinformática.

Chomsky, N. (1972). Syntatic Structures, The Hague:Mouton & Co., Printers.

Couclelis, & Gottsegen (1997). “What Maps Mean toPeople: Denotation, Connotation and GeographicVisualization in Land-Use Debates”, LectureNotes in Computer Sciences 1329, Springer-Verlag.

Davis, Clodoveu Jr. & Laender, Alberto H. F. (1999).“Múltiplas Representações em Aplicações Urbanasde Sistemas de Informação Geográfica”, anais doGeo-Info 1999 – I Workshop Brasileiro deGeoinformática.

Egenhofer, Mark (1999). “Spatial InformationAppliances: A Next Generation of GeographicInformation Systems”, anais do Geo-Info 1999 – IWorkshop Brasileiro de Geoinformática.

Fonseca, Rômulo S. (1973). Elementos de DesenhoTopográfico, Ed. McGrawHill do Brasil.

Joly, Fernand (1990). A Cartografia, Editora Papirus.Martinelli, Marcello (1991). Curso de Cartografia

Temática, Ed. Contexto.Monmonier, Mark (1991). How to Lie with Maps, The

University of Chicago Press.Oliveira, Cêurio (1988). Curso de Cartografia Moderna,

IBGE.Peirce, Charles S. (1972). Semiótica e Filosofia, Textos

Selecionados, Editora Cultrix.Peirce, Charles S. (1990). Semiótica, Tradução de

“Collected Papers of Charles Sanders Peirce”, Ed.Perspectiva.

Pratt, Ian (1993). “Map Semantics”, Lecture Notes inComputer Sciences 716 , Springer-Verlag.

Ramirez, Raul J. (1993). “Development of a CartographicLanguage”, Lecture Notes in Computer Sciences716, Springer-Verlag.

Santaella, Lúcia (1989). “Por uma classificação dalinguagem visual”, Face, jan/jun 1989, Editora daPUC-São Paulo.

Santaella, Lúcia (1996). O que é Semiótica, EditoraBrasiliense, 12a edição.

Schlichtmann, Hansgeorg (1985). “Caracteristic traits ofthe semiotic system ‘Map Symbolism’”. TheCartographic Journal, 22.

Page 104: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Aplicacao de Raciocınio Baseado em Casos a Sistemas de Apoioa Decisao Ambiental

DANIEL DOS SANTOS KASTER1, CLAUDIA BAUZER MEDEIROS1, HELOISA VIEIRA DA ROCHA1

1IC-UNICAMP – CP 6176, 13081-970 – Campinas, SP, Brasilfdaniel.kaster,cmbm,heloisa [email protected]

Abstract. One area which demands decision support applications is environmental planning. Because of theinherent complexity of environmental systems, standard Decision Support Systems (DSS) do not supply enoughfunctionalities to deal with the related issues. Spatial DSS focused on environmental domains extend traditionalDSS by providing adequate tools for environmental analysis and problem solving. This paper describes an environ-mental SDSS under development at IC-UNICAMP which combines scientific workflows, Case-Based Reasoning(CBR) and Geographical Information Systems (GIS). This system is based on two components: (1) an existingSDSS named WOODSS (WOrkflOw-based spatial Decision Support System), developed at IC-UNICAMP, whichinteracts with a GIS and uses scientific workflows to document environmental models; and (2) an intelligent modelretrieval mechanism based on CBR.

1 Introduc ao

Sistemas de apoio `a decisao (Decision Support Systems -DSS) sao sistemas que fornecem mecanismos para facilitara interac¸ao do usu´ario, atraves de interfaces e pacotes es-pecıficos de software, com modelos de an´alise e dados deum determinado dom´ınio para gerar e avaliar soluc¸oes al-ternativas.

Uma das ´areas em que h´a grande demanda de soluc¸oesde apoioa decisao e o planejamento ambiental. O uso detecnicas de planejamento ambiental visa explorar racional-mente os recursos naturais [6]. No contexto da agricultu-ra, por exemplo, envolve determinar o que plantar, onde equando plantar, como preparar a terra, que t´ecnicas de con-trole de pragas utilizar e como realizar a irrigac¸ao.

Em planejamento ambiental, os processos s˜ao usual-mente expressados atrav´es de modelos, que aproximam esimplificam a realidade, fornecendo uma representac¸ao maisestruturada dos fenˆomenos em estudo. Modelos simulam,ou imitam, as operac¸oes e reac¸oes de processos do mundoreal [16]. Modelagem e simulac¸ao computacional auxili-am cientistas a explorar hip´oteses, analisar o funcionamen-to de processos ambientais e investigar a resposta de siste-mas ambientais a poss´ıveis mudanc¸as.

Problemas ambientais, no entanto, s˜ao inerentementecomplexos, pois tipicamente possuem caracter´ısticas espa-ciais, sao dependentes do tempo e de uma s´erie de carac-terısticas geralmente inter-relacionadas [16]. Sendo assim,DSS convencionais s˜ao limitados para assistir `a tomada dedecisao no car´ater ambiental.

Sistemas Ambientais de Apoio `a Decisao (Environ-mental Decision Support Systems - EDSS) e Sistemas Espa-ciais de Apoioa Decisao (Spatial Decision Support Systems- SDSS) sao extens˜oes de DSS que oferecem aos usu´ariosambientes flex´ıveis para a tomada de decis˜oes neste con-

texto. EDSS s˜ao extens˜oes de DSS que possuem ferramen-tas especificamente desenvolvidas para assistir ao proces-so de tomada de decis˜ao ambiental [13]. SDSS estendemDSS no sentido de que s˜ao capazes de manipular adequa-damente dados espaciais, auxiliando eficientemente proces-sos decis´orios onde a dimens˜ao espacial ´e fundamental pa-ra analise [4, 5]. Um SDSS aplicado ao dom´ınio ambientalpode ser considerado um EDSS, e ser´a tratado neste textocomo um SDSS ambiental.

Geralmente, EDSS e SDSS utilizam Sistemas de In-formacao Geogr´afica (SIG) para executar tarefas de geren-ciamento e an´alise de dados espaciais [13, 9]. No con-texto deste artigo, SIG s˜ao entendidos como sistemas deinformacao que permitem coletar, armazenar e recuperarinformacoes baseadas em sua localizac¸ao espacial e explo-rar relacoes entre conjuntos de dados [12, 3].

Este artigo apresenta um SDSS ambiental, atualmenteem desenvolvimento no IC–UNICAMP. Este sistema ´e ba-seado na combinac¸ao de conceitos de Inteligˆencia Artificiale de Bancos de Dados Geogr´aficos. O objetivo ´e oferecerum ambiente computacional que auxilie os usu´arios a rea-lizar de forma eficiente as atividades necess´ariasa criacaode cenarios alternativos para planejamento ambiental.

O trabalho aqui apresentado ´e baseado em dois com-ponentes: (1) um SDSS baseado em workflows cient´ıficos,que interage com um SIG, j´a desenvolvido na UNICAMP,denominado WOODSS (WOrkflOw-based spatial DecisionSupport System) [14, 15]; e (2) um mecanismo de recupera-cao inteligente e de edic¸ao de modelos que utiliza t´ecnicasde Racioc´ınio Baseado em Casos (Case-Based Reasoning- CBR) [10, 20] para auxiliar usu´arios a desenvolver novasestrategias de soluc¸ao de problemas de planejamento ambi-ental a partir de estrat´egias ja armazenadas no WOODSS.

As principais contribuic¸oes deste artigo s˜ao:

Page 105: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

� Uma discuss˜ao sobre o uso de t´ecnicas de racioc´ıniobaseado em casos para apoio `a decisao ambiental;

� A descricao da arquitetura de um sistema que combinaworkflows, bancos de dados e racioc´ınio baseado emcasos para apoio `a decisao naarea de planejamentoagro-ambiental.

Este artigo est´a organizado como segue: a sec¸ao 2apresenta uma revis˜ao dos conceitos necess´arios ao enten-dimento do trabalho, a saber, workflows cient´ıficos e CBR;a sec¸ao 3 descreve o sistema WOODSS; a sec¸ao 4 apresen-ta uma discuss˜ao sobre a utilizac¸ao de CBR para apoio `adecisao ambiental; a sec¸ao 5 descreve a aplicac¸ao de CBRno WOODSS; e a sec¸ao 6 mostra alguns trabalhos relacio-nados ao tema deste artigo; e a sec¸ao 7 traz as conclus˜oes eo trabalho em andamento.

2 Conceitos basicos

Os principais conceitos para o entendimento deste artigosao associados a workflows cient´ıficos e racioc´ınio baseadoem casos, descritos nas pr´oximas sec¸oes.

2.1 Workflows Cientıficos

Um workflow pode ser definido como uma seq¨uencia depassos necess´arios para atingir um determinado objetivo.Cada passo deste processo ´e chamado atividade ou tarefa, epode ser executado por um ou mais agentes. Um agente ouexecutore uma pessoa ou componente de software capaz deexecutar uma ou mais destas tarefas. Atrav´es de um papele poss´ıvel descrever um determinado (tipo de) agente deacordo com um conjunto pr´e-estabelecido de habilidades ouconhecimento de contexto necess´ariosa execuc¸ao de umatarefa [2]. O objetivo de um sistema de workflows ´e auxiliarna especificac¸ao, execuc¸ao, monitoramento e coordenac¸aode um fluxo de trabalho.

A sequencia de passos de um processo decis´orio podeser descrita atrav´es de um workflow, onde cada passo ´e re-presentado por uma atividade. As informac¸oes de entradae sa´ıda (dados, condic¸oes de execuc¸ao, dispositivos a usar,entre outros) e os relacionamentos entre os diferentes pas-sos do processo s˜ao expressados pelo fluxo do workflow.

Workflows cient´ıficos sao extens˜oes a sistemas de work-flow tradicionais, especialmente definidos para documentarprocedimentos e experimentos cient´ıficos [19, 18]. O traba-lho cientıfico e caracterizado por um grande grau de flexi-bilidade e incerteza e a ocorrˆencia de excec¸oese maior doque o trabalho comercial. Desta forma, os mecanismos deworkflow padrao sao insuficientes para descrever este tipode trabalho.

Workflows cient´ıficos estendem sistemas de workflowtradicionais nos seguintes aspectos:

� Incompletude: workflows cient´ıficos podem ser exe-cutados at´e mesmo quando incompletos, sendo assimconstru´ıdos progressivamente durante sua execuc¸ao.Workflows tradicionais, ao contr´ario, precisam ser to-talmente definidos antes de serem executados;

� Reutilizacao parcial: workflows cient´ıficos diferemdos tradicionais pois s˜ao considerados como blocosem construc¸ao para especificac¸ao de experimentos. As-sim, workflows parciais podem ser utilizados para aespecificac¸ao de novos workflows;

� Modificacao dinamica: workflows cient´ıficos permi-tem re-executar atividades e tamb´em retroceder a umaatividade anterior, restabelecer seu contexto e conti-nuar a execuc¸ao por um novo curso de ac¸ao. Istoe,a especificac¸ao de um workflow pode ser modificadadinamicamente;

� Execucao de processos invalidos: no dom´ınio cientı-fico, processos de decis˜ao sao baseados no mecanismode tentativa e erro. Workflows cient´ıficos sao flexıveiso suficiente para suportar este tipo de abordagem;

� Especificacao a partir da instancia: workflows tradi-cionais sao especificac¸oes para serem executadas fre-quentemente, onde cada execuc¸aoe uma instˆancia.Workflows cient´ıficos, por outro lado, podem ser exe-cutados uma ´unica vez, como em tentativas sem su-cesso. Uma vez que um workflow cient´ıfico pode serdefinido dinamicamente, sua especificac¸aoe realizadaa partir da instˆancia, ao inv´es da especificac¸ao definira instancia.

Segundo [15], o processo decis´orio no carater ambien-tal pode ser naturalmente expressado como um experimentocientıfico, onde o objetivo ´e produzir um mapa, represen-tando um cen´ario alternativo, que ir´a indicar como resolvero problema. Este mapa ´e gerado a partir da execuc¸ao deuma seq¨uencia parcialmente ordenada de atividades, segui-da de ajustes sucessivos, usando func¸oes de um SIG. Assim,o processo de gerac¸ao de mapas pode ser apropriadamentemodelado como um workflow cient´ıfico.

2.2 Racioc´ınio baseado em casos

Racioc´ınio Baseado em Casos (Case-Based Reasoning -CBR) e uma tecnica para resoluc¸ao de problemas que re-lembra e adapta soluc¸oes que foram usadas para resolverproblemas similares anteriores [11, 20, 1]. Em CBR, umcaso cont´em informac¸oes sobre uma experiˆencia passada,como: a descric¸ao da situac¸ao encontrada; em que esta di-fere de outras situac¸oes; e como o sistema reagiu `a situac¸ao.

CBR e baseado no racioc´ınio natural humano, e exis-tem muitas evidˆencias de que pessoas usam CBR no seu

Page 106: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

raciocınio cotidiano. Kolodner cita, em [10], pesquisas quedurante o processo de aprendizado de uma nova habilidadeas pessoas freq¨uentemente retornam a problemas anterio-res para saber como realizar uma tarefa no novo contexto.Mecanicos, por exemplo, utilizam experiˆencias pr´oprias ede outros mecˆanicos para gerar hip´oteses sobre problemasem um carro e como verific´a-las.

As ideias do CBR foram desenvolvidas, em parte, co-mo uma reac¸ao a algumas desvantagens de t´ecnicas tradi-cionais de Inteligˆencia Artificial, como o Racioc´ınio Basea-do em Regras (Rule-Based Reasoning - RBR), que consisteem analisar uma situac¸ao atraves de um conjunto de regraspre-estabelecidas. Dentre estas desvantagens podemos ci-tar:

� Obtencao de conhecimento:e geralmente mais f´acilpara especialistas articular soluc¸oes relembrando solu-coes para problemas previamente encontrados do querealizando inferˆencias sobre um conjunto potencial-mente grande de regras. Al´em disso, em sistemas ba-seados em regras ´e preciso reestruturar o c´odigo paraacomodar expans˜oes e tratamento de casos particula-res. Em sistemas de CBR, por outro lado, o aprendi-zadoe uma tarefa natural, atrav´es da retenc¸ao de no-vos casos. Desta maneira, torna-se mais simples ade-quar o sistema a novas situac¸oes e situac¸oes anˆomalas.Al em disso, o conhecimento do dom´ınio nao preci-sa ser completamente definido no desenvolvimento dosistema, sendo expressado atrav´es do conjunto de ca-sos armazenado;

� Memoria: sistemas baseados em regras n˜ao possuemmemoria, o que obriga a construc¸ao de soluc¸oes sem-pre a partir do zero. Assim, erros anteriores tendema acontecer novamente. Sistemas baseados em casos,por outro lado, possuem uma mem´oria de casos anteri-ores, continuamente incrementada. Isto permite cons-truir solucoes a partir de outras, minimizando o tempogasto e evitando cometer novamente os mesmos erros;

� Robustez: em sistemas baseados em regras, quandoum problema n˜ao se encaixa em nenhuma regra, o sis-tema simplesmente n˜ao pode resolvˆe-lo. Sistemas ba-seados em casos, por sua vez, podem adaptar casoscom caracter´ısticas similares que podem ser ´uteis pararesolver o problema atual.

Podemos descrever o ciclo b´asico de processamentodo CBR como: dado um problema, obter as soluc¸oes an-teriores relevantes, adapt´a-las para o problema atual e ar-mazenar o novo caso, juntamente com sua soluc¸ao. Em [1]este processo ´e resumido nas seguintes atividades (figura1):

1. Recuperar: analisar o caso de entrada extraindo os

NOVOCASO

CASONOVO

CASORECUPERADO

ADAPTADOCASOCASO

VALIDADO

CASOAPRENDIDO

MEMORIA DE CASOS

REVISARSolucao confirmada Solucao proposta

Problema

RETER REUTILIZAR

RECUPERAR

Figura 1:Ciclo basico de processamento em CBR[1].

descritores relevantes e recuperar, utilizando estes des-critores, os casos mais similares ao caso de entrada.Esta atividade ´e fundamentada em t´ecnicas como es-quemas de ”ranking”e m´etricas de similaridade;

2. Reutilizar: construir novas soluc¸oes a partir das solu-coes dos casos recuperados e/ou partes destas, atrav´esde ajustes e adaptac¸oes;

3. Revisar: avaliar e testar a soluc¸ao constru´ıda para de-terminar sua corretude, utilidade e robustez;

4. Reter: acrescentar o novo caso `a memoria.

CBR pode ser aplicado aos mais variados dom´ınios.Nesta diversidade, podemos distinguir dois tipos b´asicos deimplementac¸ao de sistemas CBR:sistemas totalmente au-tomaticosesistemas de recuperac¸ao de informac¸ao basea-dos em casos[11]. Sistemas totalmente autom´aticos resol-vem problemas de forma autˆonoma e tˆem mecanismos deinteracao com o mundo para avaliar os resultados de suasdecisoes. Sistemas de recuperac¸ao de informac¸oes basea-dos em casos, por sua vez, subsidiam pessoas que resolvemos problemas, como uma extens˜ao da mem´oria do usu´ario,a quem cabe realizar o racioc´ınio e tomar as decis˜oes.E dosegundo tipo de implementac¸ao que estamos tratando nestetrabalho.

3 O sistema WOODSS

Como mencionado na introduc¸ao, este artigo prop˜oe a a-plicacao de tecnicas de CBR em um sistema espacial de

Page 107: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

apoio a decisao, para auxiliar usu´arios em tarefas de pla-nejamento ambiental. Esta sec¸ao apresenta o sistema WO-ODSS (WOrkflOw-based spatial Decision Support System)[14, 15], desenvolvido no IC-UNICAMP, no qual est˜ao sen-do incorporados estes conceitos.

O WOODSSe baseado na noc¸ao de workflows ci-entıficos para descric¸ao dos passos da construc¸ao de mode-los. De fato, no contexto de sistemas geogr´aficos, os mapasgerados s˜ao as soluc¸oes alternativas para um problema, e osmodelos s˜ao os algoritmos utilizados para ger´a-los.

O objetivo do WOODSS ´e auxiliar o usu´ario na eta-pa de construc¸ao de mapas, cabendo ao usu´ario interpreta-los e definir as medidas a serem tomadas. Isto ´e, o WO-ODSS visa oferecer mecanismos para manipulac¸ao e ge-renciamento de modelos. Para alcanc¸ar este objetivo, eleinterage com um SIG capturando as interac¸oes dos usu´ariosem atividades de gerac¸ao de mapas e cen´arios alternativose documentando-as como workflows cient´ıficos (figura 2).

Gerenciamento e manipulacaode modelos

Banco de Modelos

WOODSS

Funcoes para analiseespacial

SIG

(Workflow+Metadados)

Figura 2:Interacao do WOODSS com um SIG[14, 15].

Workflows cient´ıficos sao usados no WOODSS comos seguintes objetivos:

� Para documentac¸ao do processo decis´orio;

� Como especificac¸oes em alto n´ıvel de modelos de si-mulacao de processos ambientais;

� Como especificac¸oes parametrizadas de procedimen-tos de decis˜ao, que podem ser reutilizados e adaptadospara situac¸oes similares.

No WOODSS, um modelo ´e constitu´ıdo por um work-flow cientıfico e um conjunto de metadados associados. Oworkflow cientıfico descreve a seq¨uencia de passos utiliza-da e o fluxo de dados entre estes passos. Os metadadoscontem informac¸oes descritivas sobre o problema e sobre a

solucao encontrada. Desta forma, contextualizam o algorit-mo usado no dom´ınio da aplicac¸ao, o que ´e essencial parareutilizacoes futuras.

Os modelos (workflows cient´ıficos e metadados asso-ciados) s˜ao armazenados em um banco de dados, tamb´emchamado banco de modelos. Sendo assim, os usu´arios po-dem consultar o banco de modelos, recuperar os modelosmais relevantes, e modific´a-los para a gerac¸ao de novassolucoes. Os workflows podem ser modificados atrav´es dainsercao, remoc¸ao ou refinamento de atividades, al´em damodificacao de dependˆencias e metadados.

A apresentac¸ao de processos como workflows ofere-ce ao usu´ario uma visao clara e representativa. Permiteao usuario analisar o processo decis´orio como um todo,facilitando o controle do processo e o planejamento dosproximos passos. Al´em disso, o WOODSS oferece meca-nismos que facilitam a execuc¸ao, no sistema geogr´afico, dassolucoes geradas.

Mais detalhes sobre o WOODSS escapam a este artigoe podem ser encontrados em [14, 15].

4 CBR e apoioa decisao ambiental

O racioc´ınio baseado em casos apresenta caracter´ısticas quemotivam sua aplicac¸ao em modelagem ambiental. Proble-mas ambientais s˜ao inerentemente complexos e em geralinsuficientemente conhecidos e modelados. CBR ´e umatecnica onde o conhecimento ´e modelado a partir de ins-tancias, de forma que n˜ao se faz necess´ario modelar for-malmente o conhecimento do dom´ınio.

Conceitos que s˜ao partes do mundo real, como umpassaro, uma cadeira ou um fenˆomeno f´ısico, sao polimor-ficos. Istoe, suas instˆancias podem ser caracterizadas devarias formas, e n˜aoe poss´ıvel chegar a uma definic¸ao clas-sica completa em termos de um conjunto de caracter´ısticaspara tais conceitos. Uma alternativa para abordar este pro-blemae representar estes conceitos extensivamente, ou seja,defini-los atrav´es de seus conjuntos de instˆancias – ou casos[1].

Modelar sistemas ambientais atrav´es de conjuntos ex-tensivos de instˆancias aparece como uma alternativa perantea complexidade do dom´ınio ambiental. Assim, ´e poss´ıvelarmazenar instˆancias de processos aleat´orios, bem comoestados de processos em instantes diferentes e construir oconhecimento do dom´ınio atraves destes conjuntos de ins-tancias. Este tipo de modelo ´e conhecido como modelo deinstancia espec´ıfica [17].

A aquisicao de conhecimento em racioc´ınio baseadoem casos faz parte do processo natural de construc¸ao desolucoes, uma vez que cada novo caso ´e armazenado namemoria de casos. Desta maneira, o cont´ınuo desenvolvi-mento do conhecimento de sistemas ambientais e das t´ecni-cas utilizadas pode ser acomodado sem maiores dificulda-

Page 108: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

des.Al em disso, representar o conhecimento atrav´es de ins-

�ancias facilita o tratamento de excec¸oes e anomalias, n˜aoincomuns em processos ambientais. Afinal, cada caso en-cerra dentro de si uma situac¸ao acontecida e a forma comofoi resolvida. Logo, excec¸oes e anomalias podem ser trata-das de maneira an´aloga a situac¸oes comuns.

E poss´ıvel extrair conhecimentos e generalizac¸oes apartir de uma mem´oria de casos extensiva. Assim, ´e poss´ı-vel chegar a modelos mais gen´ericos e eficientes analisan-do o conjunto de instˆancias armazenado. Al´em disso, umamemoria de casos extensiva pode ser explorada, buscandopadroes e tendˆencias nos processos ambientais, contribuin-do para o melhor entendimento destes processos.

Portanto, CBR possui um grande potencial de utiliza-cao em aplicac¸oes ambientais. Na sec¸ao 6 sao apresentadosalgumas aplicac¸oes ja desenvolvidas nesta ´area.

5 Raciocınio baseado em casos no WOODSS

A abordagem apresentada nesta sec¸ao descreve a inserc¸aode CBR no WOODSS. O processo de recuperac¸ao de mo-delose o primeiro passo na reutilizac¸ao de soluc¸oes. Iden-tificar o modelo mais similar poss´ıvel ao modelo desejadopara uma nova situac¸ao oferece ao usu´ario informacoes re-levantes e diminui o trabalho de adaptac¸ao e adequac¸ao domodelo a uma nova situac¸ao. O objetivo da aplicac¸ao deCBR na edic¸ao e recuperac¸ao de modelos visa aprimorar aeficiencia da reutilizac¸ao de soluc¸oes.

5.1 Consideracoes sobre a recuperac¸ao de modelos

Um dos problemas do WOODSS reside na recuperac¸ao demodelos. Atualmente, a ´unica forma de recuperac¸ao ofere-cida pelo sistema ´e atraves de palavras-chave. No entanto,esta forma de recuperac¸ao de modelos n˜ao e sempre ade-quada ao perfil dos usu´arios.

Usuarios diferentes podem ter vis˜oes e descric¸oes di-ferentes para os mesmos modelos, e mecanismos de buscatradicionais baseados em palavras-chave s˜ao limitados pa-ra lidar com este panorama. Al´em disso, estes mecanismosnao tratam similaridades semˆanticas adequadamente.

Por exemplo, considere que um usu´ario gerou e ar-mazenou no banco de modelos um modelo descrito como”avaliacao da aptid˜ao agr´ıcola das terras da cidade de Cam-pinas”. Em um processo decis´orio posterior, outro usu´ariodeseja realizar uma tarefa similar, s´o que para a cidade deBelo Horizonte. Se o segundo usu´ario fornecer palavras-chave do tipo ”an´alise”, ”capacidade de uso”e ”Belo Ho-rizonte”, sistemas convencionais baseados em consulta pormatching exato de palavras-chave n˜ao retornariam qualquermodelo, embora o primeiro modelo pudesse ser ´util na cons-trucao da sua soluc¸ao para o segundo problema.

Considere, ainda, uma relac¸ao de similaridade mais

profunda. Por exemplo, a similaridade entre as cidades deSao Paulo, Santos e Florian´opolis depende de que aspectosestao sendo considerados. Se for considerado o aspecto delocalizacao geogr´afica, Sao Paulo e Santos s˜ao mais simila-res; se forem aspectos ambientais, possivelmente Santos eFlorianopolis tenham maior semelhanc¸a, por serem cidadeslitoraneas; e se for considerada a caracter´ıstica de ser capi-tal de estado, a similaridade entre S˜ao Paulo e Florian´opolise maior.

Da mesma forma, em planejamento ambiental ´e pre-ciso considerar o contexto do problema para que sejam re-cuperados modelos relevantes. A soluc¸ao proposta consis-te em embutir conhecimento do dom´ınio da aplicac¸ao nosmecanismos de edic¸ao e recuperac¸ao de modelos para obtermelhores resultados. Neste ponto, entra a inserc¸ao de CBR,que oferece naturalmente mecanismos para tratarsimilari-dadeentre casos (modelos, na aplicac¸ao em quest˜ao).

5.2 Arquitetura do WOODSS utilizando CBR

Sistemas de CBR utilizam uma estrutura para representac¸aoe organizac¸ao dos casos, denominada mem´oria de casos, eestruturas de ´ındices para otimizar a recuperac¸ao de casos.Os algoritmos de recuperac¸ao devem considerar m´etricasde similaridade e ”ranking”de casos, dependentes do co-nhecimento do dom´ınio. A proposta de combinar bancos dedados e CBR visa especificar o mecanismo de CBR apro-veitando o conhecimento j´a bastante maduro em bancos dedados sobre organizac¸ao, indexac¸ao e recuperac¸ao de da-dos.

Um caso, nesta abordagem, corresponde a uma instˆan-cia de utilizac¸ao de um modelo. Desta maneira, um modelopode ter varios casos associados. Por exemplo, um mesmomodelo (algoritmo no SIG) pode ser utilizado em mais deuma situac¸ao com dados de entrada diferentes. As diferen-tes situac¸oes sao consideradas diferentes casos associadosao mesmo modelo. Armazenando todos os casos referentesa um modelo, o sistema automaticamente enriquece o con-junto de informac¸oes sobre o modelo, representando dife-rentes situac¸oes que levariam um modelo a ser relembrado,aumentando a flexibilidade da recuperac¸ao.

A figura 3 mostra de forma simplificada a arquitetu-ra do WOODSS, j´a considerando a utilizac¸ao de CBR. Omodulo monitor/conversor captura as interac¸oes do usu´ariocom o SIG e as codifica como um workflow cient´ıfico. Alemdisso,e capaz de traduzir modelos em alto n´ıvel no WO-ODSS em c´odigos execut´aveis no SIG.

O banco de modelos cont´em os modelos (workflow ci-entıfico + metadados) armazenados e a mem´oria de casos oscasos associados aos modelos. Para recuperar um modelo,o usuario fornece uma descric¸ao do problema, que ´e com-parada com os casos armazenados na mem´oria de casos. Osistema retorna ao usu´ario o modelo referente ao caso mais

Page 109: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

semelhante ao problema apresentado.O modulo de edic¸ao permite que o usu´ario realize as

adaptac¸oes e os ajustes necess´arios para reutilizar o mode-lo como soluc¸ao para o novo problema. Uma vez valida-do pelo usu´ario, se o modelo gerado difere dos modelos j´aarmazenados, este ´e retido no banco de modelos e o casocorrespondente retido no banco de casos. Caso contr´ario,somente o novo caso de utilizac¸aoe retido.

MODELOSEDICAO RECUPERACAO

MODELOS

Memoriade Casos

Bancode Modelos

MONITOR/CONVERSOR

SIG

INTERFACE

CBR

Figura 3: Arquitetura do WOODSS utilizando CBR narecuperac¸ao de modelos.

Rizzoli et al. Apresenta em [13] um conjunto de ca-racter´ısticas gen´ericas desej´aveis de um sistema de apoioa decisao ambiental (EDSS). A necessidade de cada umadestas caracter´ısticas em um sistema particular ir´a depen-der da natureza do problema, da situac¸ao e dos usu´arios dosistema:

1. Capacidade de adquirir, representar e estruturar o co-nhecimento do dom´ınio em estudo. Para isto, ´e precisoidentificar o dom´ınio da aplicac¸ao, estabelecer quaissao as estruturas de dados necess´arias para representaros componentes do dom´ınio modelado e entender osrelacionamentos entre eles;

2. O banco de modelos, onde o conhecimento estruturadodo dom´ınio e armazenado, deve permitir a separac¸aoentre dados e modelos para facilitar a reutilizac¸ao demodelos e a prototipagem;

3. Capacidade de lidar com dados espaciais;

4. Oferecer ajuda especialista no dom´ınio de interesse,atraves de tecnicas de inteligˆencia artificial. Conheci-mentos do dom´ınio sao uteis para auxiliar o usu´ario a

recuperar informac¸oes, preparar dados, selecionar mo-delos e interpretar resultados;

5. Fornecer mecanismos para auxiliar o usu´ario durantea formulacao do problema e na escolha dos m´etodosde soluc¸ao.

Nota-se que o WOODSS oferece inicialmente as trˆesprimeiras caracter´ısticas sugeridas:

� De fato, workflows no WOODSS permitem represen-tar e estruturar o conhecimento do dom´ınio em estudo,representado atrav´es dos modelos. Al´em disso, com omecanismo de captura de interac¸oes dos usu´arios como SIG, o WOODSS permite adquirir conhecimentosautomaticamente. Os relacionamentos entre as tarefase sub-processos s˜ao apresentados naturalmente atrav´esdos workflows (1);

� O banco de modelos ´e provido pelo WOODSS (2);

� O SIG acoplado ao WOODSS fornece as func¸oes demanipulac¸ao e an´alise de dados espaciais (3).

Com a inserc¸ao de CBR, o WOODSS adquire carac-terısticas desej´aveis de um EDSS at´e entao nao oferecidas:

� Com a utilizac¸ao de CBR na edic¸ao e recuperac¸ao demodelos torna-se sens´ıvel ao dom´ınio e auxilia o es-pecialista na formulac¸ao do problema e na escolha dosmetodos de soluc¸ao (modelos) e pode ser mais efetivonas tarefas de planejamento ambiental (4);

� Atraves do conhecimento do dom´ınio embutido no con-junto de casos e do mecanismo de similaridade parcialentre casos, o sistema pode identificar semelhanc¸as en-tre os questionamentos do usu´ario e os modelos arma-zenados, retornando os mais adequados, que, por suavez, contem tarefas computacionais de modelagem esimulacao (5).

Sob esta ´otica, o acoplamento de CBR ao WOODSSpermite a construc¸ao de umSDSS ambientaladequado.

6 Trabalhos correlatos

Existem algumas abordagens que utilizam CBR em aplica-coes de apoio `a decisao ambiental, como [8, 17, 7]. Has-tings apresenta em [7] um sistema de notificac¸ao de alertassobre infestac¸oes de gafanhotos combinando CBR e raci-ocınio baseado em modelos (Model-Based Reasoning). Oprocesso decis´orio utilizado consiste em estimar a propor-cao de folhagem que ser´a consumida pelos gafanhotos, ava-liar se a infestac¸ao pode afetar as plantac¸oes e, caso istoocorra, estimar os custos e benef´ıcios das medidas a seremtomadas. O sistema, denominado CARMA (CAse-basedRange Management Adviser), nao utiliza SIG.

Page 110: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Verdenius e Broeze apresentam em [17] um sistemabaseado em CBR aplicado ao dom´ınio de tratamento deaguas de esgoto utilizando plantas e microorganismos. Du-rante o processo de transformac¸ao de substˆancias t´oxicas,existe uma grande demanda de oxigˆenio. Para que a tarefade purificac¸ao daagua tenha um desempenho ´otimo, umatecnica utilizada consiste em injetar doses de oxigˆenio naagua. A ideia do sistema consiste em gerenciar o n´ıvel deoxigenio e decidir nas variadas situac¸oes que medidas to-mar. Este sistema tamb´em nao utiliza SIG.

Uma aplicac¸ao que combina CBR e SIG ´e apresenta-da por Holt e Benwell em [8]. Nesta referˆencia, os autoresdescrevem um sistema de classificac¸ao de solos denomina-do ZONATION. A proposta deste sistema reside no fato deque, segundo os autores, n˜ao existe uma f´ormula gen´ericaque pode ser aplicada para classificac¸ao de s´eries de solospara um ambiente (ou ´area) gen´erico. O sistema apresenta-do permite aos especialistas realizar classificac¸oes baseadasem instancias pr´evias, utilizando conhecimento espec´ıficodo dom´ınio.

Embora a abordagem de Holt e Benwell utilize SIG, aproposta descrita neste artigo ´e original, pois: (1) o dom´ınioda aplicac¸ao e distinto (neste trabalho ´e o dom´ınio de pla-nejamento agro-ambiental); e (2) a abordagem apresentadaneste artigo visa assistir ao usu´ario na tarefa de construc¸aode modelos ambientais e n˜ao envolve a utilizac¸ao de mode-los definidos formalmente, como nas aplicac¸oes citadas.

7 Conclusoes e extensoes

Este artigo apresenta um sistema atualmente em desenvol-vimento no IC-UNICAMP visando a construc¸ao de um SDSSambiental. Este sistema est´a baseado em acoplar a um sis-tema atualmente existente, o WOODSS, um conjunto deferramentas de edic¸ao e recuperac¸ao de modelos utilizan-do CBR. O trabalho est´a sendo centrado na ´area de plane-jamento agro-ambiental, contando para isto com apoio deespecialistas da Faculdade de Engenharia Agr´ıcola da UNI-CAMP.

A combinacao de tecnicas de CBR e bancos de da-dos geogr´aficos para apoio `a decisao e um topico de pes-quisa de ponta, onde existem ainda poucos trabalhos de-senvolvidos. A proposta descrita ´e original em varios as-pectos, destacando a possibilidade de auxiliar o usu´ario nacriacao e adaptac¸ao de modelos, recuperados com CBR,e pela aplicac¸ao estar focada no dom´ınio de planejamentoagro-ambiental.

Al em disso, destacam-se os seguintes resultados:

� Com a inserc¸ao de CBR o sistema WOODSS torna-se mais efetivo para apoio `a decisao no contexto am-biental, fornecendo mecanismos para gerenciamentoe recuperac¸ao eficiente de modelos, tratando-os comocasos;

� A definicao de atributos e parˆametros adequados paraaplicacao de CBR em um dom´ınio espec´ıfico e novo.Estes atributos correspondem `as especificac¸oes pararepresentac¸ao, indexac¸ao, armazenamento e recupera-cao de casos. Levantando, desta forma, conhecimen-tos que podem ser aplicados futuramente em novos tra-balhos de pesquisa.

O estagio atual deste trabalho ´e o levantamento de atri-butos e indicadores de similaridade no dom´ınio agro-am-biental, realizado em paralelo com modificac¸oes ao WO-ODSS para permitir incorporar estruturas de CBR.

Agradecimentos

Este trabalho foi parcialmente financiado pelo CNPq e pe-los projetos PRONEX MCT/FINEP SAI (Sistemas Avan-cados de Informac¸ao) e CNPq/NSF Interoperabilidade emSIG. Os autores agradecem especialmente ao professor Jans-le Vieira Rocha, da FEAGRI UNICAMP, pelas in´umerasreunioes, discuss˜oes, dados e casos para este trabalho.

Referencias

[1] A. Aamodt and E. Plaza. Case-based reasoning: foun-dational issues, methodological variations and systemapproaches.AI Communications, 7(1):39–59, 1994.

[2] P. Barthelmess. Sistemas de workflow: An´alise daArea e proposta de modelo. Master’s thesis, IMECC-UNICAMP, 1996.

[3] G. Camara, M. A. Casanova, A. S. Hemerly, G. C.Magalhaes, and C. B. Medeiros. Anatomia deSistemas de Infomac¸ao Geografica. Instituto deComputac¸ao - UNICAMP, 1996.

[4] M. D. Crossland, B. E. Wynne, and W. C. Perkins.Spatial decision support systems: An overview of te-chnology and a test of efficacy.Decision Support Sys-tems, 14(3):219–235, July 1995.

[5] P. J. Densham. Spatial decision support systems. InD. J. Maguire, M. F. Goodchild, and D. W. Rhind, edi-tors, Geographical Information Systems: Principlesand Applications, chapter 26, pages 403–412. Long-man Scientific and Technical, New York, NY, 1991.

[6] K. Fedra. GIS and environmental modeling. In M. F.Goodchild, B. O. Parks, and L. T. Steyaert, editors,Environmental Modeling with GIS, chapter 5, pages35–50. Oxford Univesity Press, New York, NY, 1993.

[7] J. D. Hastings.A Mixed Paradigm Approach to Pro-blem Solving in Incomplete Causal-Theory Domain.PhD thesis, University of Wyoming, Laramie, Wyo-ming, 1996.

Page 111: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

[8] A. Holt and G. L. Benwell. Applying case-based re-asoning techniques in GIS.The International Jour-nal of Geographical Information Science, 13(1):9–25,1999.

[9] P. Keenan. Using GIS as a DSS generator. Wor-king Paper MIS 95-9, Department of Management In-formation Systems, Faculty of Commerce, UniversityCollege Dublin, Dublin, Ireland, April 1997.

[10] J. Kolodner. Case-Based Reasoning. Morgan Kauf-mann Publishers, San Mateo, CA, 1993.

[11] J. L. Kolodner and M. Y. Jona. Case-based reasoning:An overview. Technical Report 15, Northwestern Uni-versity, June 1991.

[12] D. J. Maguire. An overview and definition of GIS.In D. J. Maguire, M. F. Goodchild, and D. W. Rhind,editors,Geographical Information Systems: Princi-ples and Applications, chapter 1, pages 9–20. Long-man Scientific and Technical, New York, NY, 1991.

[13] A. E. Rizzoli and W. J. Young. Delivering environ-mental decision support systems: Software tools andtechniques.Environmental Modelling and Software,12(2–3):237–249, 1997.

[14] L. Seffino. WOODSS - a spatial decision support sys-tem based on scientific workflows. Master’s thesis,UNICAMP, July 1998.

[15] L. Seffino, C. B. Medeiros, J. V. Rocha, and BeiYi. WOODSS - a spatial decision support system ba-sed on workflows.Decision Support Systems, 27(1–2):105–123, November 1999.

[16] L. T. Steyaert. A perspective on the state of envi-ronmental simulation modeling. In M. F. Goodchild,B. O. Parks, and L. T. Steyaert, editors,EnvironmentalModeling with GIS, chapter 3, pages 16–30. OxfordUnivesity Press, New York, NY, 1993.

[17] F. Verdenius and J. Broeze. Generalized and instance-specific modelling for biological systems.Environ-mental Modelling and Software, 14:339–348, 1999.

[18] J. Wainer, G. Vossen, and C. B. Medeiros. Workflowmanagement in geoprocessing applications. Techni-cal Report 04/98-I, University of M¨unster, Germany,February 1998.

[19] J. Wainer, M. Weske, G. Vossen, and C. B. Medeiros.Scientific workflow systems. InProceedings of theNSF Workshop on Workflow Process Aumation: State-of-the-art and Future Directions, 1996.

[20] I. D. Watson. Applying Case-Based Reasoning: Te-chniques for Enterprise Systems. Morgan Kaufmann,1997.

Page 112: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Exchange Mechanism for Global Mapping

Teresa Cristina Veiga

IBGE- Instituto Brasileiro de Geografia e Estatística, Av. Brasil, 15671, 21241-051 Rio de Janeiro, RJ, Brasil

[email protected]

Abstract. This paper describes findings and results of the research realized for the Global Mapping Project,with the cooperation of Geographic Survey Institute (GSI), Japan, in order to set the procedures for convertingcartographic digital data in vector format, produced at IBGE, at 1 to 1million scale, to Global Mapspecifications.

1. Introduction

The Global Mapping Project, led by the InternationalSteering Committee for Global Mapping (ISCGM) have itsroots on the results of the United Nations Conference onEnvironment and Development (UNCED), held in Brazilin 1992, and on the report of the Special Session of theUnited Nations General Assembly on the Implementationof Agenda 21, held in June 1997, stressing the importanceof public access to globally mapped information and ofinternational cooperation in making it available.

A Global Map (GM), or a group of global digitalgeographic datasets, is the expected resultant product ofthe Global Mapping Project. According to the GMSpecifications [3], the main objective of Global MappingProject is to bring all nations and concerned organizationstogether to develop and provide easy and open access toglobal digital geographic information, at a scale of 1:1million, to facilitate the implementation of globalagreements and conventions for environmental protection,for monitoring environmental phenomena and forencouraging sustainable development.

The first phase of the Project, up to year 2000,involves gathering digital geographic information, atglobal map scale, organized into thematic layers, orcoverages, either in vector form (baseline features) orraster form (elevation, land cover, land use andvegetation), through international cooperation of nationalmapping organizations.

All countries are encouraged, by ISCGM, toparticipate according to their capacity of developingsuitable data for other countries (level A) or for its ownterritory (level B), or even only by inputting data to bedeveloped by a third party (level C).

Brazil, through its National Mapping Agency(Brazilian Institute of Geography and Statistics – IBGE)joined the Global Mapping Project in 1999, as a level Bparticipant country, after being invited to integrate theproject, since its participation at the VI United NationsRegional Cartographic Conference for the Americas, on

July 1997, at New York, where the Global MappingProject was object of special attention. Before joiningofficially the Project, IBGE participated at the GlobalMapping Meeting at Gifu, Japan, on November at the sameyear, where it was requested the support of NationalMapping Agencies for the implementation of the projectuntil the end of year 2000.

As a consequence, it was offered to IBGE theopportunity to send a participant for the Global Mapping(Environment) Course held in Japan, from May to August,1998. During the Course it was tried to use the existentvector digital dataset from the Digital Chart of the World(DCW), referent to the CIM sheet of Goiânia (SE-22), butit was verified that data was out of date and tiles didn’tmach properly, needing edition, as shown in Figure 1.

Figure 1 - DCW file example

2. Information in digital format for conversion

Many countries, like Brazil, which are participating ofGlobal Mapping Project, are being encouraged by theInternational Steering Committee for Global Mapping(ISCGM) to convert their paper maps from many differentdigital formats, using a variety of systems, databasestructures and a different set of attributes for definingspatial entities, specially in terms of baseline features, to

Page 113: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

the Global Map specifications or, at least, to a formatcompatible with VPF, which can be used by ISCGM todistribute the datasets. Some of these digital databases canbe used directly in Geo Information Systems (GIS) othersare ready only for Cartographic purposes or for map sheetsprinting.

Exchanging data related with Global Mapping Projectimplies on both importing from VPF to a particular systemand exporting from any system to VPF format. A first stepcan be taken by using any existent digital data and convertit to VPF, directly or through other formats which can bereadily used by participating countries. It doesn’t exist anappropriate method which can fulfill all needs of all users.Each case must be seen as a particular case but there aresome basic procedures that are common to the process as awhole.

3. Software systems for producing and convertingdigital information

Different software systems are used for digital databasesproduction and management, either for cartographic orGIS purposes. Among many of them, we can mention, forexample:− Intergraph MGE (based on ODBC/ACCESS, Oracle or

Informix) [7];

− ESRI ArcInfo (ArcView) [6];

− Bentley Microstation (Geographics) [5];

Import and export from one software system toanother, inside a GIS environment, is still a hard task. It isdifficult to find a software which can fully read any otherformat. All GIS software have significant limitations inconverting from one format to another, according to thecomplexity of their importing and exporting functions,despite the effort of software suppliers on overcome it.

4. CIM Project

The International Chart of the World at 1 to 1 million(1:1,000,000) scale (CIM), of the Brazilian Territory, hasbeen produced by the Brazilian Institute of Geography andStatistics (IBGE) according to the “Manual of Rules,Specifications and Technical Procedures” [1]. These ruleswere adopted at Bonn’s United Nations TechnicalConference about the International Chart of the World at 1to 1 million scale, in 1962, after the revision of London(1909) and Paris (1913) resolutions.

The “Manual” [1] aimed at standardize theprocedures for making cartographic originals at 1 to 1million scale, representing the geographic space mainly byhydrography (drainage), hipsography (elevation), andrelevant planimetric elements, necessary for the physicaland social characterization of a territory.

The Brazilian territory is covered by a set of 46 CIMsheets (or tiles) which give support for the realization ofstrategic studies and territorial analysis in a national scale.These sheets are also used as a support for building othercartographic documents, at smaller scales, which willcompose the base for representing thematic subjects likepopulation distribution, soils, geology and vegetation,among others.

The preparation of the new version of 1:1,000,000sheets, which started in 1993, was concluded in 1998 andprinted in 1999. IBGE, through the Department ofCartography, made a revision of the necessary proceduresand elaborated a new version for the “Manual” (1),attending to the rules of Bonn’s agreement about theInternational Chart of the World at 1 to 1 million(1:1,000,000) scale (CIM), at the UN TechnicalConference.

The project of converting the 1:1,000,000 papersheets to digital format, named CIM Project, is meant toboth cartographic purpose and for being used by GISsystems, mainly on Intergraph MGE environment, which isthe main software system used at IBGE. The CIM databasewas structured to fit with this system and to fulfill othercartographic requests.

The first phase of the process for converting the 46sheets at 1:1,000,000 scale to digital format, by IBGE,started in the beginning of 1998 and involved theconversion from paper maps to raster files by scanning allthe cartographic originals used for composing the newedition. By the middle of 1999 the raster files, obtainedthrough this process, started to be converted from raster toIntergraph .DGN vector format files. This work is beingcarried out by a third party contracted by the NationalAgency of Electric Energy (ANEEL) in urgent need of areliable digital database to support energetic developmentplans. The next necessary steps to be taken are: to codifythe vectorized files, to link them with the attributesdatabase, to build topology and to produce new data atsmaller scales for regional and national planning. Databaseis still based on ODBC/ACCESS environment, but will beconverted to Oracle system in a near future.

The system selected to realize this work wasIntergraph MGE system which comprises raster as well asvector modules and is already spread through severalDepartments at IBGE. By the end of March 2000 thevectorization of the 46 sheets was completed and ready tobe structured topologicaly.

The cartographic originals (blue, red, yellow, greenand black) where split in 9 different vector files, or layers,for each sheet, according to the categories specified at theDigital Topographic Map Library (MTD) structure:hypsography (contour line, height), limit (political-administrative limit), hydrography (river, canal, lake,

Page 114: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

shoreline), vegetation (marshland, mangrove), locality(city, village, capital), transportation system (road,railroad, train station), works and buildings (breakwater,sea wall, lighthouse, plant, cemetery, rural building).

The 1:1.000.000 scale digital database, coming fromthe International Chart of the World (CIM) and coveringall the territory will be used for building other databases atsmaller scales and for the Global Map Project. This meansIBGE will be able to produce its own data for the GlobalMap.

The Department of Cartography (DECAR) is incharge of producing vector data for the Global MapProject, which will be adapted from the CIM Project. TheDepartment of Natural Resources (DERNA) will be incharge of producing data related with vegetation, land useand land cover. Elevation data can be obtained from theexistent vector database through the contourlines and otherelevation data. Political boundaries, at Municipal level,were added to CIM Project and to the Global Map Projectfrom de existent Digital Municipal Boundary 1997database. By the end of the year 2000, It will beincorporated the new Digital Municipal Boundary used forthe Census 2000.

Digital data representing CIM sheets are grouped inclasses of cartographic elements which are assembled inthe categories shown at Table 1.

Table 1 - CIM CategoriesCATEGORY

NUMBER (*)

CIM CATEGORY CATEGORY

CODE

01 hypsography (elevation) hp

02 limit (boundary) lm

04 hydrography (drainage) hd

05 vegetation vg

06 locality (place, site) lc

07 transportation system st

09 work and building 02 (structures) o2

(*) The category code number 03 corresponds to the category referential

point (survey point, landmark) which elements are not represented at

CIM Project; elements of the categories 08 and 10, work and building 01

and 03, are incorporated at the work and building 02.

The structure of MTD database which has beenapplied to Global Map CIM Project has been built basedon Intergraph MGE structure on ODBC/ACCESS system,and comprises: categories, features, attributes and domainsfor the attribute values. Table 2, shows an example of thestructure for MTD category HIDROGRAPHY.

Data obtained through the vectorization process willbe codified, linked with the attributes in the database andtopologically structured. For being used by the GlobalMap Project, however, these files need to be compatiblewith Global Map specifications and to be converted to

VPF format. The alternatives affordable to accomplish thistask, by the time of the research were:

1) Using SDTS module, inside Intergraph MGESystem, to create an output which can be used by anotherSystem to create VPF files;

2) Using Bentley GEOEXCHANGE System, tocreate an ARC/INFO file or an ARCVIEW “shape” file tobe used for further conversion to VPF;

3) Creating a new project using .DGN graphic filesand ACCESS database tables, in anARCINFO/ARCVIEW environment for exporting to VPFformat through the programs already created for this.

6. GM Project

According to GM Specifications [3] (pg. 29/30), theGlobal Map product will encompass the entire globe, at ascale of 1:1 million. For accomplish this task, data setsmust be consistent with either the scale and thespecifications. Spatial features are organized into thematiclayers or “coverages” each containing logically relatedgeographic information. For the purpose of this research,only vector form layers were considered. The features ofthe vector data model, on these layers, which will becomprised of three spatial objects: points, edges, and faces,can be seen at Table 3.

Still according to the Specifications [3], vectorfeatures will be selected on the basis of their suitability for1:1 million scale mapping. As a result of this, somefeatures may occur only in less densely areas where theyare referentially more important.

Global Map thematic coverages share the samecoordinate system and tiling structure. The tiling schemaadopted for Brazil have the dimensions of 5 x 5 degrees.

7. Comparison

CIM Project and GM project databases are different andstructured diversely. The correspondence between layers,features and attributes can be evaluated through the Tables4, 5 and 6.

Table 4 - Correspondence between CIM Projectcategories and GM Specifications categories

CIM Category Name GM Category Name

hipsography (elevation) elevation (raster)

limit (boundary) boundaries

hidrography (drainage) drainage

vegetation vegetation (raster)

locality (place, site) population centers

transportation system transportation

works and building (structure) 02 not on an specific layer

Features from CIM project are comprised on 7categories. A full correspondence among layers of

Page 115: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

categories was not encountered. In some categories likedrainage and transportation many features are compatible,but in others like boundaries and population centers therewas some difficulty for making the correspondence withGlobal Map mandatory features, like the coast line whichdoesn’t exist as a separate feature on CIM Project. Theworks and building category has no correspondence at all.

While Global Map specifications foresee the featuresrepresenting the vector data model comprising of threespatial objects: points, edges and faces, besides text, CIMproject works with 6 different spatial objects, includingtext. (See Table 5a and 5b)

Table 5a - Spatial objects representing vectorfeatures at MTD (MGE)

CIM Object type CIM object description

point (*)object with no dimensional representation

line (*)object which extension can be represented

area boundary object with two dimensions represented

area centroid (*) point inside the area boundary

closing line imaginary line for closing an area boundary

text centroid point to which is assigned a text

(*) object connected to an attribute table

Table 5b - Spatial objects representing vectorfeatures according to GM Specifications

GM Object type GM Object description [3]

point 0-dimensional geometric primitive

edge 1-dimensional topologic primitive

face 2-dimensional topologic primitive

text text

The topological structure used inside Intergraph MGEenvironment doesn’t configure an area or a polygon withattributes but, instead, an area boundary associated with acentroid which contains the attributes of the polygonrepresented by this area boundary. This centroid in somecases can be considered a point feature as well, which cancause some confusion.

Some attributes and features related to a Global Mapcoverage are similar to the ones of CIM Project; others arecontained in a different layer of CIM Project or just don’texist. The distribution of spatial objects or features amongcategories is also not the same in both projects.“Dam/weir” included in the “drainage” coverage of Globalmap project, for example, must be extracted from thecategory “work and building 02 (structures)” from CIMProject. These incompatibilities, which can be seen atTable 6, require that some extra preparation work must bedone in order to make features and attributes usable for the

Global Map Project.Political boundaries are obtained from the Digital

Municipal Boundary 1997 database, which has beendeveloped for ARCINFO environment and adapted to CIMProject prior of being used directly for Global Map.

8. Hypothesis Two possibilities were figured out as being the mostsuitable to fulfill the task of building the Global Map CIMProject.

The first one - and apparently the easiest one - was tomaintain the structure and codes from CIM Project, inPortuguese, and convert them to Global Map, in a way thatfeature names and attributes are converted to English andto Global Map specifications on the process; the secondone, to structure a completely new project, based on MTDstructure at MGE environment, in English, following GMfeatures specifications, to be exported directly to GlobalMap.

9. Research

The main purpose of the research was to evaluate whichwas the best way to use existent digital data from IBGE’sCIM Project, in order to produce Global Map tiles ofBrazilian territory in VPF format.

Data used on the research tests came from the digitaldatabase, rasterized and vetorized with Intergraph MGESystem, derived from 1:1,000,000 existent CIMcartographic originals.

It was selected a file representing a single CIM sheetfrom the digital database with graphic features connectedto its attributes, codified and topologically structured,containing all categories and a representative number offeatures, in order to test the first possibility outlined in thehypothesis, and the behavior of different features (objects).A political boundary file, required by GM specifications,was composed with the coastline feature taken from thedrainage database, once at the moment of the research, thecategory “political boundaries” file was not yet availablefor CIM Project.

The first alternative tested was to convert directlyfrom Intergraph MGE system using SDTS module.Because the existent version of Intergraph MGE Modules,at IBGE, is working based on an ODBC/ACCESSdatabase system, it was not possible to use the SDTSmodule, which needs a database schema system notapplicable for the existent database.

Using Bentley GEOEXCHANGE System waspossible to create ARC/INFO files and ARCVIEW“shape” files which could be used for conversion to VPF.

A brief explanation about the sequence forGeoExchange conversion process, starts by setting the

Page 116: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

database contained in the directory of the Intergraph MGEproject for ODBC system. It’s not necessary to build a newproject if a MGE project is already structured in aparticular directory. It is necessary only to open the file tobe converted on GeoExchange, to open the existent MGEproject, to set the necessary variables and to export the file.GeoExchange exports, separately, each feature containedon the file.

Point and line features hardly presented any problemon the conversion, but polygons were object of somestruggle before being properly exported and used on thenext steps. For being exported from Intergraph MGEsystem, the area boundaries need to be “complexed” withthe area centroids to generate a “face” type output requiredby Global Map specifications. GeoExchange, however,don’t export completely these polygons when they haveother polygons (holes) inside, like lakes on islands orislands on lakes. It’s necessary to separate these featuresbefore exporting.

To convert CIM Project files to the tiles with GMspecifications, ARCINFO software was used as anintermediary step. After exporting the selected featuresfrom CIM files, through Geoexchange, to the ArcInfo .E00or shape file formats, it is necessary to import them intoArcInfo coverages. The conversion process to VPF, usesthe “VPFkit for Global Map” built with the ProductionLine Tool Set (PLTS) from ESRI [6].

The final Global Map sample product, obtained fromCIM Project files converted to VPF format, through theprocedures executed during the research, can be seen withARCVIEW software [6] as exemplified in Figure 4. Itsfeatures structure is shown in the Table 7.

Figure 4 - Global Map vector file example

As the second alternative tested, using Bentley’sGeoExchange software and the programs alreadydeveloped in ARCINFO environment by GSI, fulfilled theneeds to convert data from Intergraph MGE to Global MapVPF, for the purpose of this research, it was not necessaryto test the third one.

Table 7 – Global Map structure at VPFGMVPFLayer

Cov.Name

GMVPF

Feature

Feat.Type

Feat.Code

Global Map FeatureDescription

Hydro-graphy

hydro miscp point BA030 Island smaller then 1km2

watrcrsl edge BH140 Water course, river,stream

miscl edge BI020 Dam, Weirinwatera face BH000 Inland water area

BH090 Land subject toinundation

10. Conclusions

In order to fulfill the requests of a final product which fitswith Global Map specifications, some extra initial workmust be done with CIM files to avoid future troubles. Thiswork implies in some adaptation, separation andaggregation of features in different layers, as it has beendone with the coast line feature created from CIM category“hydrography” to compose the Global Map “politicalboundaries” coverage.

The first problem faced is the way the feature name iswritten in the CIM database. As outlined on the firsthypothesis, the database was maintained in the way it wasstructured for CIM Project, in Portuguese. Intergraf MGEand the Microsoft ACCESS internal structures allow theuse of blank spaces but ArcInfo “import command” doesn'trecognize it. GeoExchange, on the conversion process,maintain the original name and doesn’t allow any changeor edition. As soon as the features are exported it isnecessary to edit their names, eliminating or substitutingthe blank spaces, allowing ArcInfo “import command” towork properly.

Point features and line features tested, hardlypresented problems on the conversion process. Polygonfeatures, meanwhile, had to be edited and tested manytimes, in different ways, to find the right way to use themin the sequence of conversion procedures from MGE toArcInfo, through GeoExchange, and latter to VPF through“VPFKit”. The perfect solution, however, couldn’t befound. Polygon holes on complexed area boundary featuresaren’t exported by GeoExchange directly and had to beworked separately, which complicates automationprocedures.

Island point feature doesn’t exist on CIM Projectdatabase as a separate entity. For Global Map project itwill represent all islands with less then 1 square km. Thisis a subject to be considered on the further development ofthe project because all islands which appears on CIMdatabase are composed by an area boundary with an areacentroid containing the attributes, independently of theirsize.

The Global Map boundary feature “coast line”doesn’t exists as a separate feature on CIM database but as

Page 117: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

an attribute of a political administrative boundary linefeature. In this way it will be possible to make a specificquery to export it separately. The same problem occurswith ocean/sea boundary feature. At the CIM database“ocean” is an attribute of a “permanent water body” areacentroid feature from the category Hydrography. Byquerying and “complexing” it with the area boundaryfeature it is possible to create a new feature to be exportedto the Global Map coverage “political boundaries”.

Other problem encountered, and which had to beworked out during the conversion procedures, is relatedwith projection, coordinates and working units. The digitaldatabase derived from CIM cartographic originals wasbuilt on Lambert Conformal Conic Projection, withCorrego Alegre Datum, using the unit “degrees, minutesand seconds” for longitude and latitude coordinates, andworking unit of 10000 UOR per km (Units of Resolutionor the smallest unit of accuracy at which a point can belocated within a design area) for measurements.

All this had to be converted in ARCINFO beforeexporting to VPF. Degrees, minutes and seconds wereconverted to decimal degrees and the units of resolutionfrom Km to m using the conversion factor 0,001 meters.Conversion parameters are necessary to adapt projectionsand working units to Global map specification.

A new database in English, built on Intergraph MGEstructure, but using GM specification for features andattributes can be used in the future for testing the secondhypothesis. It could facilitate the conversion process,eliminating some steps. The names of the features in theproposed database are proper to conversion without blankspaces. Global Map feature code was added to the projectstructure as an attribute, in this way there won't beproblems of code repetition for different feature objects inGlobal Map structure once MGE code structure doesn’tallow code repetition for different elements. The structureof MTD codes was maintained in order to keep the linkwith CIM Project, specially, because features forcomposing GM categories came from different CIMcategories, for example, “dam/weir” from the category“work and building 02 (structures)” to the coverage“drainage” and “ocean/sea” from the “hydrography” to the“political boundaries”.

The model of the proposed structure for a databasefor further conversion from an MGE project to a GlobalMap Project can be seen at Table 8.

For the scope of CIM Project it will be useful toinclude in the Global Map CIM Project the feature “landsubject to inundation”, at “Inland water” feature table,because it is a valuable information for environmentaldevelopment projects. Some other features existent andcodified in both databases, such as depth line, pier, dangerpoints, rapids, waterfall, breakwater, sea wall, native

settlement and lighthouse, could also be included whenavailable.

As a final remark, it will be very useful and helpfulfor Global Map CIM Project if a solution to convert digitaldata directly from Integraph MGE to VPF format could befind.

11. References

[1] Fundação Instituto Brasileiro de Geografia eEstatística, Diretoria de Geociências, Departamento deCartografia - IBGE/DGC/DECAR (Brazilian Institute ofGeography and Statistics, Directory of Geosciences,Department of Cartography), “Manual de normas,especificações e procedimentos técnicos para a CartaInternacional do Mundo, ao Milionésimo - CIM 1:1 000000 (Manual of technical standards, specifications andprocedures for the International Chart of the World, at 1 to1 million scale)”, Série Manuais Técnicos em Geociências,número 2 (Technical Manuals on Geosciences Series,number 2), IBGE, Rio de Janeiro, 1993.

[2] Fundação Instituto Brasileiro de Geografia eEstatística, Diretoria de Geociências, Departamento deCartografia - IBGE/DGC/DECAR (Brazilian Institute ofGeography and Statistics, Directory of Geosciences,Department of Cartography), Mapoteca TopograficaDigital (Digital Topographic Map Library includingdatabase structure and the specifications of standardfeatures and its attributes), DOCUMENTAÇÃOINTERNA - VERSÃO 04 (Internal paper in development -version 04), Rio de Janeiro, 1999.

[3] Secretariat of International Steering Committee forGlobal Mapping - ISCGM, Report of the Fifth Meeting ofInternational Steering Committee for Global Mapping,Canberra, Australia, GSI, 1998.

[4] Secretariat of International Steering Committee forGlobal Mapping - ISCGM, Explanation for Vmap Level 0in ArcInfo Export format, 1999.

[5] Bentley Systems Brasil (GeoExchange, Geographics,MicroStation-SE), http://www.bentley.com.br.

[6] ESRI – Environmental System Research Institute, Inc.(ArcInfo/ArcView), http://www.esri.com.

[7] Sisgraph Ltda. (Intergraph MGE)

http://www.sisgraph.com.br/http://intergraph.com./federal/products/imis/vpfps.asp

[8] . Secretariat of International Steering Committee forGlobal Mapping - ISCGM, Report of the Sixty Meeting ofInternational Steering Committee for Global Mapping,Cambridge, England, GSI, 1999.

Page 118: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Table 2 - Example of MTD (Intergraph MGE/ACCESS) structure (Categories, Features, Attributes and Domains) for theCIM Project category HIDROGRAFIA (hydrography, drainage)

Feature Name Feat.Code

Feat. AttributeTable

Feature Type lv co s w Attribute Field DoNr

DomainName

Attribute ValueTable

Att.Val

Value Description

CONTORNO HD PERMANENTE LIM (permanent water body)

04302 area boundary 1 71 0 1

CONTORNO HD PERMANENTE 04402 tbhd_mas_agua area centroid 1 0 0 0 mslink 0

(permanent water body) mapid 0

nm_nome (name) 0

nm_rio_associado (river name) 0

md_ar_poli (area) 0

cd_classificacao 14 HDDOM01 hdclassificacao 1 baia (bay)

(water body type) 2 rio (river)

3 furo (hole)

4 parana (estuary)

5 vala (ditch)

6 oceano (ocean)

7 canal (canal)

8 lago (lake)

9 lagoa (lagoon)

10 represa (dam)

cd_navegabilidade 15 HDDOM02 hdnavegabilidade 1 navegavel (navigable)

(navigation) 2 não navegavel (not navigable)

3 nao identificado (unidentified)

cd_fluxo 16 HDDOM03 hdfluxo 1 permanente (permanent)

(flow) 2 intermitente (intermittent)

3 nao identificado (unidentified)

ILHA (island) 04403 tbhd_ilha area centroid 54 117 0 0 mslink 0

mapid 0

nm_nome_ocor (name) 0

md_ar_poli (area) 0

cd_tipo_ilha (island type) 22 HDDOM09 hdtipoilha 1 fluvial (river island)

2 maritima (sea island)

3 outras (other)

4 nao identificado (unidentified)

DELIMITADOR HD 04599 area boundary 62 23 5 0

Table 8 - Example of Global Map CIM Project (Intergraph MGE/ACCESS) structure (Categories, Features, Attributesand Domains) for the Global Map coverage DRAINAGE

FeatureName

FeatureCode

Feature AttributeTable

FeatureType

lv co st we Attribute Field DoNr

DomainName

Attribute ValueTable

AttributeValue

Value Description

island 04403 tbdr_island point 54 117 0 0 mslink 0mapid 0f_code 0 BA030nm_nam_island 0

inland water 04302 tbdr_inland_water face 2 72 0 1 mslink 0mapid 0f_code 0 BH001nm_nam_inland_wate 0cd_hyc 23 DRDOM01 hydrologicalcateg 0 unknown

6 non-perennial /intermittent/fluctuating8 perennial/permanent

water border 04599 edge 62 23 5 0water text 04601 text 61 61 0 0

Page 119: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Table 3 - Example of Global Map Specifications Vector Data [3] for the Global Map coverage DrainageAll features will have an additional attribute. This attribute will identify the source country for the data. Definitions in this dictionary are taken from

DIGEST Edition 2.0 02 June 1997. Field size of * is a variable length field and may be of any length.

Feature Name Feature CodeDescription

Definition FeatureClass

Attributes Fieldname

Field type Fieldsize

Valuetype/codes

Value Description or Example

Miscellaneous Dam/Weir A permanent barrier across a watercourse used toimpound water or to control its flow.

point,edge

FACC feature code f_code Character text string 5 BI020

Island A land mass smaller than a continent and surrounded bywater.

point FACC feature code f_code Character text string 5 BA030

Spring/Water-Hole

A natural outflow of water from below the groundsurface.

point FACC feature code f_code Character text string 5 BH170

Aqueduct/Canal/Flume/ Penstock

Inland Water A pipe or artificial channel designed to transport waterfrom a remote source, usually by gravity. A man-madeor improved natural waterway used for transportation.An open, inclined channel which carries water for use insuch operations as mining or logging. A pipeline orchannel generally used by hydroelectric plants or watermills to transport water by gravity or under pressure.

edge FACC feature code

Existence Category

Location Category

f_code

exs

loc

Character text stringNumber (short integer)

Number (short integer)

5

1

1

BH000

015604

825

UnknownDefiniteUnder ConstructionAbandoned/DisusedUnknownBelow Surface/Submerged /UndergroundOn Ground SurfaceSuspended or Elevated Above Ground orWater Surface.

Water Course River/Stream A natural flowing watercourse. edge FACC feature code

Hydrological Category

Name

f_code

hyc

nam

Character text stringNumber (short integer)

Character text string

5

1

*

BH140

06

8UNKActualvalue

UnknownNon-Perennial/ Intermittent/ FluctuatingPerennial/PermanentunknownNILE

Inland Water Inland Water Any known inland waterway body, such as: lake/pond,reservoir, river/stream, etc. requiring separation intoindividual features due to status/type grouping that iscurrently indeterminable.

face FACC feature code

Hydrological Category

Name

f_code

hyc

nam

Character text stringNumber (short integer)

Character text string

5

1

*

BH000

06

8UNKActualvalue

UnknownNon-Perennial/ Intermittent/ FluctuatingPerennial/PermanentunknownLAKE TANGANYIKA

Water text Text Feature names positioned to allow production of acartographic product.

text text Feature name

Table 6 - Example of the correspondence between CIM Project and Global Map Project Categories, Features andAttributes for Inland Water features at the GM Layer Drainage

CIM Feature Name CIMFetureCode

CIM FeatureType

CIM AttributeTable

CIMfield CIMvalue_type

CIMvalue_descr GM ValueDescription

GM Valuetype/ codes

GMFieldname

GMAttributes

GMFeature Class

GM FeatureCode

description

ILHA (Island) 04403 centroid tbhd_ilha BA030 f_code FACC featurecode

point Island

nm_nome_ocor(island name)

null no information

actual value

cd_tipo_ilha(island type)

1 fluvial (in river)

2 maritime (in sea)

3 outras (other)

4 nao identificado(unidentified)

BH170 f_code FACC featurecode

point Spring/Water-Hole

CONTORNO HD PERMANENTE LIM(Permanent water body)

04302 area boundary tbhd_mas_agua BH000 f_code FACC featurecode

face Inland Water

cd_fluxo (waterflow)

3 or null nao identificado unknown 0 hyc hydrologicalcategory

2 intermitente non perennial/intermittent/fluctuating

6

1 permanente perennial/permanent

8

nm_nome null no value unknown UNK nam name

actual value actual value

DELIMITADOR HD (Closing line) 04599 area boundary

CONTORNO HD PERMANENTE(Permanent water body)

04402 area centroid

Page 120: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

1

Fatores Determinantes de Desempenho de Métodos de Acesso Multidimensionais

RICARDO RODRIGUES CIFERRI1

ANA CAROLINA SALGADO2

1DIN/UEM – Departamento de Informática da Universidade Estadual de Maringá,Av. Colombo, 5790, Zona 07, 87020-900 Maringá, PR, Brasil

[email protected]/UFPE – Centro de Informática da Universidade Federal de Pernambuco,

Caixa Postal 7851, Cidade Universitária, 50732-970 Recife, PE, [email protected]

Abstract: Spatial data base systems (SDBSs) deal with data that are special in nature and size. Thus, thetechnologies developed for conventional data base systems such as physical design, access methods, queryoptimizers and languages, have to be modified in order to satisfy the needs of a SDBS. These modifications,embedded in several SDBSs, or being proposed by research projects, need to be evaluated. Our researchfocuses specifically multidimensional access methods (MAMs), which are very important structures used todiminish the execution time of search operations in a SDBS. In this paper, we discuss two important factorsthat affect the performance of MAMs: degree of overlap between non-zero size data objects and data selectivity.

1 Introdução

A manipulação de dados espaciais, tais como pontos, linhas,polígonos e sólidos tridimensionais, é um requisito funda-mental para inúmeras aplicações atuais, as quais incluemaplicações geográficas de gerenciamento de serviços deutilidade pública (telefonia, eletricidade, água e esgoto),aplicações de planejamento e administração cadastral ur-bano e rural, aplicações ambientais, aplicações CAD/CAM(projeto e fabricação auxiliados por computador), aplica-ções cartográficas e aplicações de biotecnologia.

O gerenciamento em memória secundária de dadosque possuem extensão e/ou localização no espaço é tarefaespecífica de uma classe particular de sistemas de bancode dados (SBDs), denominada de SBDs espaciais (SBDEs).Sistemas de banco de dados espaciais estendem as fun-cionalidade típicas de gerenciamento de dados alfanumé-ricos em disco, oferecendo suporte integrado a tipos dedados espaciais em seu modelo de dados, linguagem deconsulta e implementação física.

Dentre as várias estruturas utilizadas por um SBDE,métodos de acesso multidimensionais (MAMs) destacam-se por permitirem que o desempenho na recuperação dedados seja melhorado significativamente. Estes métodos,também conhecidos como mecanismos de indexação es-pacial, organizam o espaço multidimensional e os objetoscontidos neste espaço de tal forma que somente algumaspartes do espaço e um subconjunto dos objetos espaciaisarmazenados sejam considerados para responder umadada consulta espacial. Esta organização é fundamental,devido ao rápido crescimento do volume de dados arma-zenado em SBDEs. Os bancos de dados do sistema EarthObserving System da NASA e do projeto SEQUOIA 2000,

por exemplo, armazenarão respectivamente, quando fina-lizada a fase de coleta de dados, 10 Pbytes (1016) e 100Tbytes (1014) de dados.

Após duas décadas de pesquisa, diversos MAMs fo-ram desenvolvidos, os quais são voltados principalmentepara a indexação de pontos e retângulos. Gaede e Günther[8] realizaram uma extensiva revisão bibliográfica dosmétodos de acesso propostos até 1996. Este levantamentorevelou a existência de aproximadamente 50 métodos deacesso. Infelizmente, esforço compatível não tem sido veri-ficado na comparação de desempenho de MAMs. Poucostrabalhos efetuaram testes de desempenho comparativos,sendo que estes trabalhos abrangeram apenas um pequenosubconjunto dos métodos de acesso, com ênfase na família R-tree. Ademais, alguns trabalhos mostram-se limitados nainvestigação de certos fatores determinantes de desempenho,isto é, fatores que influenciam diretamente o desempenhodos MAMs no suporte a consultas espaciais e no suporte aoperações de inserção, remoção e modificação de dados.

A pesquisa sendo desenvolvida pelos autores desteartigo está direcionada para a análise de desempenho demétodos de acesso multidimensionais através do uso datécnica experimental de benchmark de banco de dados.Neste sentido, primeiramente foram identificados os prin-cipais fatores determinantes de desempenho (Tabela 1).Em seguida, foi feito um levantamento de trabalhos ante-riores voltados à investigação e comparação da variação dodesempenho de MAMs. Após este levantamento, foi reali-zada uma análise crítica e comparativa dos diversos traba-lhos correlatos em função de cada um dos fatores deter-minantes de desempenho. Vale destacar que a referidaanálise crítica visou identificar problemas e limitaçõesnas metodologias usadas para investigar a influência dos

Page 121: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

2

fatores na eficiência dos MAMs. Tanto o levantamento detrabalhos correlatos, quanto a análise crítica e compara-tiva podem ser encontrados em Ciferri e Salgado [5].

A análise de desempenho pretende abranger diversosMAMs, tais como R-tree com algoritmos de particiona-mento de nó quadrático e linear, R-tree Greene, R+-tree,R*-tree, Hilbert R-tree, cell tree with oversize shelves, PMR-quadtree e M-tree. Um ambiente de teste deve incluir: (1)um conjunto representativo de arquivos de dados reais esintéticos (isto é, gerados artificialmente); (2) uma inter-face funcional que permita a comunicação entre usuáriosfinais e a ferramenta de benchmark e consequentementetorne possível a parametrização dos fatores determinantesde desempenho e (3) mecanismos para a visualização estatís-tica dos resultados de desempenho coletados. Nosso ambi-ente de teste, além de atender a estes requisitos, medirá odesempenho segundo diferentes perspectivas, ou seja, atravésda utilização de diferentes tipos de medidas de desempe-nho (acessos a disco, operações geométricas, tempo de uti-lização da UCP, espaço de armazenamento, tempo totalgasto, etc.).

No estágio atual de nossa pesquisa, somente o fatordistribuição espacial dos dados foi investigado para umsubconjunto dos métodos de acesso anteriormente citados(métodos de acesso da família R-tree). Para isto, foi pro-posta uma metodologia que permite a geração de um

conjunto de distribuições de dados com diferentes caracte-rísticas, as quais tornam possível que a influência do fatordistribuição espacial dos dados seja analisada sob pers-pectivas distintas, desde uma reduzida até uma acentuadainfluência no desempenho dos MAMs. Como resultado,confirmou-se que a distribuição espacial dos dados exercegrande influência no desempenho tanto absoluto quantorelativo de MAMs. Ademais, em especial, foram verifica-das novas relações de desempenho, algumas das quaiscontrariam resultados de desempenho e conclusões obtidasem trabalhos anteriores, tais como em Cox Júnior [7] eem Carneiro [3]. Maiores detalhes sobre a investigação dofator distribuição espacial dos dados podem ser encon-trados em [6].

Este artigo discute especificamente aspectos relacio-nados com os fatores determinantes de desempenho “graude sobreposição entre objetos espaciais de dimensão não-zero” e “seletividade dos dados”. Estes dois fatores, apesar deimportantes, tem recebido um tratamento superficial eminvestigações anteriores. A próxima seção discute aspec-tos relacionados com o grau de sobreposição entre objetosespaciais de dimensão não-zero. O controle da seletivida-de dos dados e as diversas aplicações deste controle sãodiscutidos na seção 3. Já a seção 4 apresenta brevementealgumas características de trabalhos correlatos. Por fim, aseção 5 apresenta as conclusões.

classes de fatores fatores determinantes de desempenho

relacionadosaos dados

tipo de dado, distribuição espacial dos dados, volume (quantidade) e escalabilidade, tamanho e formato deobjetos espaciais de dimensão não-zero, grau de sobreposição entre objetos espaciais de dimensão não-zeroe seqüência de inserção dos dados.

relacionadosà carga de trabalho

tipo de consulta (ex.: nearest neighbour query), características associadas a parâmetros de consulta (taiscomo tamanho, formato e distribuição espacial dos retângulos relativos às janelas de consulta de rangequeries ou distribuição espacial dos pontos base de consultas do tipo point query), dinâmica dos dados(operações de inserção, remoção e modificação) e seletividade dos dados.

relacionados aogerenciamento de

buffer-pool

política de gerenciamento, tamanho total do buffer e tamanho da página de disco. A variação deste últimofator conduz, para um mesmo MAM, a diferentes agrupamentos de objetos. Já os demais fatores deter-minam quais e quantos objetos estarão presentes em memória principal, requisitos fundamentais paraotimizar os acessos a disco.

relacionadosa parâmetros da

estrutura

a variação de alguns parâmetros, tal como o número mínimo de entradas por nó para os MAMs R-tree eR*-tree, permite um ajuste diferenciado na estrutura de dados e por conseguinte um melhor ou pior desem-penho.

Tabela 1 Fatores determinantes de desempenho de métodos de acesso multidimensionais

2 Grau de Sobreposição entre Objetos Espaciais deDimensão não-zero

Diversos trabalhos têm destacado a influência da sobre-posição entre objetos espaciais no desempenho de MAMs[8, 9, 14]. Greene [9], por exemplo, concluiu que o métodoR+-tree produz um melhor desempenho quando ocorrem

menos sobreposições entre objetos espaciais de dimensãonão-zero. Já Kriegel et all [14], em suas consideraçõesfinais, destacam algumas limitações presentes na avaliaçãode desempenho realizada pelos próprios autores, dentre asquais encontra-se a ausência de testes de desempenho queinvestigassem os efeitos da variação do grau de sobreposi-ção. A caracterização exata do termo “grau de sobreposi-

Page 122: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

3

ção”, no entanto, não foi efetuada por Kriegel et all, nempelos demais trabalhos correlatos estudados.

O grau de sobreposição, segundo o entendimento dosautores deste trabalho, pode ser definido a partir de duasmedidas. A primeira consiste na média do número deobjetos intersectados por cada objeto espacial armazenadoem um arquivo de dados. Outra medida possível paracontabilizar o grau de sobreposição é baseada na extensãoespacial envolvida. Para retângulos no espaço bidimensio-nal, por exemplo, esta medida deve ser calculada em doispassos. Inicialmente, para cada objeto espacial deve-secalcular a fração de área envolvida com sobreposições,sendo que esta fração deve ser quantificada através de umpercentual de área relativo à área total do extent. Por fim,calcula-se a média das frações. Um alto grau de sobrepo-sição corresponde, portanto, a um grande número deobjetos intersectados e a uma vasta área de sobreposição.A Figura 1 ilustra um exemplo no qual um dado objetoespacial intersecta três outros objetos, sendo que a fraçãode área envolvida com sobreposições está em cinza.

Figura 1 Exemplo de sobreposição

Ao invés de controlar o grau de sobreposição segun-do as medidas acima citadas, por exemplo na geração dedados sintéticos, alguns trabalhos correlatos apresentaramapenas uma estimativa do grau de sobreposição médiopresente nos vários arquivos de dados através da medida"densidade de sobreposição" [1, 9, 11, 13]. Esta medidaindica quantas vezes o extent é coberto pela coverage(área total) de todos os objetos espaciais, e pode sercalculada pela Equação 1, onde n corresponde ao númerode objetos espaciais. A coverage de todos os objetosespaciais, de modo equivalente, também pode ser calcu-lada através da expressão n * tamanho médio dos objetos.

Equação 1 Densidade de sobreposição

A medida densidade de sobreposição, segundo algunspesquisadores [10, 15], é um bom indicador do grau desobreposição, sendo que valores crescentes de densidadetendem a indicar um maior grau de sobreposição. Nestesentido, Günther et all [11] apresenta alguns exemploscom densidades distintas, sendo que para uma densidade desobreposição de 100% foi verificado que sobreposiçõesentre objetos espaciais ocorriam, mas em um grau não

muito elevado, enquanto que uma densidade de 5% tor-nava praticamente inexistente a ocorrência de sobreposi-ções entre objetos espaciais. A Tabela 2 apresenta asdensidades consideradas em alguns trabalhos.

trabalhos correlatosvoltados à análise de

desempenho de MAMs

densidade de sobreposição

Greene [9] 0,0001; 0,01; 1 e 10

Beckmann et all [1] 2; 2,5; 8; 10 e 11,2

Kamel e Faloutsos [13] entre 0,029 e 1

Günther et all [11] 0,05; 0,3 e 1

Tabela 2 trabalhos correlatos

A medida densidade de sobreposição, entretanto,possui como grande limitação o fato de não ser muitoprecisa, sendo que situações completamente antagônicaspodem apresentar o mesmo valor de densidade. Comoexemplo, a Figura 2 ilustra o conteúdo de dois arquivosde dados com a mesma densidade de sobreposição, masclaramente contendo diferentes graus de sobreposição.Vale destacar que, em um destes arquivos, propositada-mente, não ocorre nenhuma sobreposição. Desta forma,pode-se concluir que o uso isolado da medida densidadede sobreposição na investigação da variação do desempe-nho de MAMs em função do grau de sobreposição não éapropriado, sendo necessário o uso de um conjunto alter-nativo de medidas que caracterize de uma forma maisprecisa o grau de sobreposição.

Ainda há espaço, portanto, para novas investigaçõessobre a influência da sobreposição entre objetos espaciaisno desempenho de MAMs, a qual deve ser conduzida deum modo controlado e exaustivo. A obtenção de diferen-tes valores para o grau de sobreposição pode ser alcan-çada através da variação de outros fatores determinantesde desempenho, os quais influenciam indiretamente nograu de sobreposição. Cox Júnior [7] observou que con-juntos de dados com objetos grandes, por exemplo, tendem agerar sobreposições e provocam alterações de desempe-nho distintas por parte dos métodos de acesso. A distribui-ção espacial dos dados, por sua vez, também influenciano grau de sobreposição, sendo um bom exemplo ilustra-do na Figura 2. Ooi [15] verificou que quando os objetosestão distribuídos de uma forma mais uniforme, o grau desobreposição é menor.

Vale destacar, entretanto, que a realização de testesque investigam isoladamente a variação do desempenhoem função da distribuição espacial dos dados ou emfunção do tamanho dos objetos espaciais não proporcio-nam qualquer conclusão independente com relação àsobreposição entre objetos espaciais, apesar destes testestambém conduzirem à variação do grau de sobreposição.

extenttamanho

iobjetotamanhoDensidade

n

i

_

)(_1

∑==

Page 123: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

4

Figura 2 Exemplo de arquivos com a mesma densidade de sobreposição,mas contendo diferentes graus de sobreposição

A variação da distribuição espacial dos dados paradois arquivos de um mesmo tipo1, por exemplo, em geralconduz à variação do grau de sobreposição, tal como umarquivo de dados com distribuição altamente correlacio-nada apresentando um grau de sobreposição cinqüentavezes maior do que um arquivo com distribuição unifor-me. Neste sentido, pode-se concluir, incorretamente, queum método de acesso multidimensional A apresenta umdesempenho superior ao método de acesso B quando ograu de sobreposição é alto, ao passo que para um baixograu de sobreposição o método de acesso A apresenta ospiores resultados. Neste caso específico, entretanto, odesempenho é influenciado prioritariamente pela distri-buição espacial dos dados, sendo que a influência do graude sobreposição pode ser considerada como secundária.Observação similar pode ser feita no caso da variação dotamanho dos objetos, com destaque para a manutenção dadistribuição espacial dos dados.

Para verificar de fato qual a influência da sobre-posição entre objetos espaciais no desempenho de méto-dos de acesso multidimensionais deve-se variar conjunta-mente ambos os fatores distribuição espacial dos dados etamanho dos objetos espaciais, os quais devem ser usadospara controlar o grau de sobreposição. Uma possível es-tratégia consiste da geração de um conjunto de pares dearquivos, sendo que cada par possui um grau de sobre-posição distinto, mas os arquivos de um dado par possuem omesmo grau de sobreposição (ou muito próximos) e sãoformados por diferentes distribuições de dados e tama-nhos de objetos. Como exemplo, pode-se citar a geraçãodo par de arquivos A e B, com o arquivo A constituído deobjetos pequenos sob distribuição altamente correlacio-nada e o arquivo B formado por objetos grandes distri-buídos de modo uniforme no espaço, mas ambos arquivosapresentando o mesmo grau de sobreposição.

Caso o desempenho, para um determinado métodode acesso, seja semelhante para os arquivos de dados deum mesmo par e significativamente diferente entre os

1 arquivos com características equivalentes quanto a tipode dado, volume, tamanho e formato dos objetos espaciais.

vários pares de arquivos2, comprova-se que o desempenhofoi influenciado basicamente pela sobreposição dos dados(e independente, de certo modo, da distribuição espacialdos dados e do tamanho dos objetos espaciais). Por outrolado, a constatação freqüente, para diferentes métodos deacesso, de um desempenho muito diferenciado para arqui-vos de dados de um mesmo par ou de um desempenhosimilar para pares com graus de sobreposição muito dis-tintos (ausência, baixo, médio e alto, por exemplo), podeindicar que o grau de sobreposição não constitui em umfator determinante de desempenho para MAMs.

3 Controle da Seletividade dos Dados

A seletividade dos dados corresponde ao percentual dedados recuperados por uma consulta com relação aoconjunto completo de possíveis respostas à consulta. Nocaso de consultas espaciais de seleção, este percentual écalculado, portanto, com base na quantidade total de obje-tos espaciais armazenados no arquivo de dados sobre oqual a consulta foi executada, enquanto para consultas dotipo junção espacial, este percentual é calculado com baseno número de tuplas do produto cartesiano de dois arqui-vos de dados.

O controle da seletividade dos dados, isto é, a possi-bilidade de se recuperar somente uma certa percentagemdos dados, como exemplo 1%, 5%, 15% ou 30%, é muitoimportante, dado que uma consulta pode gerar umdesempenho não proporcional ao percentual de dadosrecuperados [4]. Uma consulta, logicamente, pode gerar umdesempenho distinto em função do percentual de dadosrecuperados, ocorrendo de modo geral uma diminuiçãono desempenho à medida que a seletividade dos dadosaumenta, ou seja, à medida que cresce o volume de dadosrecuperados. Entretanto, apesar da diferença de desem-penho obtida com a utilização de graus de seletividadedistintos, espera-se que a razão entre os desempenhos sejaproporcional à razão entre os graus de seletividade.

2 deve-se usar graus de sobreposição com certa diferença,

de modo que a variação não reflita uma variação contínua.

Page 124: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

5

Como exemplo, se a recuperação de 10% dos objetosespaciais armazenados em um arquivo de dados gastar 5segundos, a recuperação de 30% e 50% dos objetos espa-ciais deve gastar respectivamente em torno de 15 e 25segundos. Quando a recuperação de 30% dos objetosespaciais consumir, por exemplo, 30 segundos, verifica-seum desempenho não proporcional ao percentual de dadosrecuperados. Em especial, Günther et all [11] destaca que aseletividade dos dados constitui em um excelente indica-dor de variações no desempenho relativo. Para sistemasgerenciadores de banco de dados relacionais, o estudo davariação do desempenho em função do percentual de da-dos recuperados por uma consulta tem sido largamente reali-zado, com destaque para o uso do benchmark de Wisconsin.

A investigação da variação do desempenho de méto-dos de acesso em função do percentual de dados recupe-rados por uma consulta é tanto viável quanto particular-mente interessante. Viável no sentido que alguns traba-lhos correlatos já constataram, de forma indireta, que oaumento do grau de seletividade dos dados pode alterar odesempenho relativo dos métodos de acesso, assim comopode alterar o desempenho absoluto de um MAM. Estaconstatação foi feita a partir da variação do tamanho dajanela de consulta de intersection range queries. O cres-cimento do tamanho da janela de consulta implica, indi-retamente, em um aumento do grau de seletividade para amaioria absoluta das situações3. Como exemplo, Carneiro[3] verificou que a diferença de desempenho entre as vari-antes da R*-tree e da R-tree tende a cair com o aumentodo tamanho da janela de consulta. A simples variação dotamanho da janela de consulta não permite, entretanto,um controle preciso do grau de seletividade. Para isto,adicionalmente é necessário uma distribuição sistemáticados dados e das janelas de consulta.

Dentre os trabalhos correlatos revisados, apenas doistrabalhos consideraram de algum modo o fator seletivi-dade dos dados nos testes de desempenho. O trabalho deGuttman [12] não investigou a variação do desempenhodo método de acesso R-tree em função do percentual dedados recuperados por uma consulta, e por conseguintenão controlou a variação do grau de seletividade dos da-dos, limitando-se apenas a constatar que a execução dasconsultas, no caso intersection range query, conduzia auma seletividade entre 3% e 6% do total de objetos espa-ciais armazenados nos arquivos de dados.

Já o trabalho de Günther et all [11] destaca-se porter investigado a variação do desempenho de estratégias

3 considerando que as janelas possuem o mesmo formato e

distribuição espacial do centro, diferindo somente com relaçãoao tamanho. Assim, a seletividade dos dados para duas janelascom mesmo centro, na pior hipótese, será igual.

distintas de processamento de junção espacial em funçãodo percentual de dados recuperados por vários subtipos dejunção espacial, cada qual com um predicado específico,tais como distance minor-equal, intersection e directionnorthwest. Apesar do enfoque dado aos testes de desempe-nho não ter sido direcionado para métodos de acesso, aexistência de estratégias fundamentadas no uso de MAMs,tais como scan-and-index e synchronized tree traversal,permitiu uma avaliação do método de acesso quadtree,escolhido para dar suporte a estas estratégias.

Em especial, verifica-se que ainda existe espaço parase realizar novas pesquisas com métodos de acesso multi-dimensionais envolvendo o fator seletividade dos dados.Neste sentido, pode-se realizar testes que:

• investiguem de forma precisa e controlada o compor-tamento de métodos de acesso específicos, tais como osMAMs da família R-tree, frente a diferentes graus deseletividade dos dados. Em particular, pode-se verificar seo desempenho do método de acesso em questão é propor-cional ou não ao percentual de dados recuperados poruma consulta. Quanto ao tipo de consulta, pode-se desta-car consultas do tipo range query, uma vez que este tipode consulta tem sido amplamente investigado na literatu-ra e possui grande popularidade, por exemplo, entre usuá-rios de aplicações georeferenciadas;

• investiguem a variação do desempenho relativo deMAMs em função do percentual de dados recuperadospor uma consulta. Para métodos de acesso com estruturana forma de uma árvore de múltiplos caminhos (multiwaytree), por exemplo, o agrupamento de objetos espaciaisem nós folhas deve ser feito de tal maneira que um baixograu de seletividade (tal como 1% do número total deobjetos espaciais indexados) conduza ao acesso a um nú-mero reduzido de nós, especialmente de nós folhas. Casocontrário, pode ocorrer uma degradação excessiva nodesempenho. Já para um alto grau de seletividade, para oqual ocorre a recuperação de grande parte dos objetosindexados (como exemplo, 75%), espera-se o acesso a umagrande quantidade de nós, sendo a eficiência do agrupa-mento de objetos espaciais menos importante neste caso.Assim, pode-se verificar o desempenho relativo de váriosMAMs tanto para um baixo grau de seletividade dosdados, para o qual é esperado uma diferença significativano desempenho, quanto para um alto grau de seletividadedos dados, para o qual espera-se desempenhos semelhantes;

• investiguem a influência que a distribuição espacialdos dados exerce na seletividade dos dados. Isto pode serconseguido através da recuperação de um mesmo percentualde dados para regiões distintas do extent. Como resultado,poderá ocorrer duas possíveis situações. Na primeirasituação, o desempenho é determinado predominantementepelo grau de seletividade e portanto praticamente o mesmo

Page 125: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

6

quando consideradas regiões distintas do extent. Já nasegunda situação, verifica-se que o desempenho difere deforma significativa de uma região para outra, apesar dopercentual de dados recuperados pela consulta ser omesmo. Neste caso, em particular, pode-se dizer que odesempenho de um método de acesso, para um dado graude seletividade, é influenciado pela distribuição espacialdos dados;

A seletividade dos dados também destaca-se pelafunção que exerce no suporte à escolha de um plano deexecução por parte de um otimizador de consultas. Estefator é comumente estimado para determinar a escolha deplanos de execução que usam índices convencionais oumétodos de acesso multidimensionais. Dependendo daseletividade estimada dos dados, o otimizador de consul-tas de um sistema gerenciador de banco de dados (SGBD)pode escolher, por exemplo, entre o uso de um índice ou arealização de uma busca seqüencial. Em geral, para grausde seletividade muito altos, o uso de índices não é reco-mendado, uma vez que a sobrecarga de execução causadapor estas estruturas supera qualquer ganho de desempe-nho potencial. Neste caso, a realização de uma busca se-qüencial gera um melhor desempenho.

A escolha de uma estratégia para processamento deconsultas em um SGBD espacial deve considerar ambosos predicados espacial e convencional. Neste sentido, ootimizador de consultas deve primeiramente gerar dife-rentes planos de execução, os quais definem a ordem deprocessamento das diversas subconsultas associadas aospredicados, sendo que em alguns casos a ordem deprocessamento restringe o conjunto de dados no qual umasubconsulta posterior irá atuar. Com base em umaestimativa de custo associado a cada plano, o otimizadorde consultas deve então escolher o plano com menorcusto. Câmara, et all [2] apresenta e discute diferentesplanos de execução para consultas com ambos os tipos depredicado espacial e convencional, com o predicado espa-cial abrangendo especificamente consultas do tipo regionquery e junção espacial.

Há casos, no entanto, que uma consulta é constituídaapenas por um predicado espacial. Um típico exemplo é"selecione todos os municípios que estão localizados nazona da mata de Pernambuco" (containment region query).Nestes casos, a escolha do otimizador de consulta resume-se basicamente a dois planos: (1) o uso de um método deacesso multidimensional ou (2) a varredura completa doarquivo de dados.

No primeiro plano, assume-se, claro, que o respec-tivo arquivo de dados encontra-se indexado. Vale destacarque este plano não se restringe unicamente ao uso de ummétodo de acesso, sendo adicionalmente necessário umafase posterior de processamento. Tal necessidade é conse-

qüência direta do fato que métodos de acesso representama geometria de objetos espaciais de dimensão não-zero,como exemplo uma linha ou um polígono, através de umaaproximação, visando diminuir tanto o custo de armaze-namento quanto o custo de processamento para se deter-minar a satisfação dos relacionamentos espaciais. Asaproximações, tal como MBB, garantem que nenhum dosobjetos espaciais que satisfazem o relacionamento emquestão seja desconsiderado na resposta da consulta, masem contrapartida permitem a recuperação de objetosespaciais que não satisfazem o relacionamento espacial(chamados de falsos candidatos), uma vez que a determi-nação do relacionamento pode ser decidida com base emum espaço, contido dentro da aproximação, que não fazparte da geometria do objeto (dead space – Figura 3).Assim, pode-se dizer que MAMs são imprecisos, no sentidoque estes não retornam a resposta final e exata dasconsultas, retornando ao invés disto um superconjunto decandidatos. Na literatura, esta fase é comumente denomi-nada de filtragem, uma vez que um MAM apenas filtra(ou descarta) os objetos que certamente não satisfazem orelacionamento espacial em questão.

Figura 3 Recuperação de um falso candidato

Devido à presença de falsos candidatos no conjuntode objetos selecionados, é necessário uma fase posteriorde processamento, chamada de refinamento, na qual é veri-ficado, para cada objeto espacial candidato, se o rela-cionamento espacial é satisfeito com relação à geometriaexata do objeto, sendo descartados quaisquer falsos candi-datos. A fase de refinamento é altamente custosa, pois re-quer tanto o acesso à geometria exata dos objetos espa-ciais, e portanto a transferência para memória principalde uma quantidade relativamente grande de dados, quanto arealização de cálculos geométricos complexos para sedeterminar a satisfação do relacionamento espacial. Ocusto do primeiro plano deve ser calculado, portanto, apartir dos custos de ambas as fases de filtragem e refina-mento.

Já o segundo plano resume-se à aplicação direta dafase de refinamento para todos os objetos espaciais arma-zenados no arquivo de dados (estratégia equivalente a umabusca seqüencial). Desta forma, para cada objeto espacialé necessário o acesso à sua geometria exata e a realização

área superposta (dead space)

objeto espacialna forma de umalinha diagonal

janela deconsulta

MBB

Page 126: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

7

subsequente de cálculos geométricos sobre esta geometriapara se determinar a satisfação do relacionamento espacial.

A escolha por parte do otimizador de consultas entreos dois planos de execução anteriormente citados é alta-mente influenciada pela seletividade estimada dos dados,a qual exerce grande peso na determinação do custo dosplanos. A escolha do primeiro plano, e portanto o uso deum MAM, é baseado nas seguintes premissas: (1) a fasede refinamento é altamente custosa e deve ser aplicada auma quantidade extremamente reduzida de objetos espa-ciais; (2) a fase de filtragem, por sua vez, é várias vezesmenos custosa do que a fase de refinamento e assim, deveser usada para restringir o número de objetos (candidatos)a serem analisados na fase de refinamento. Desta forma, afase de filtragem serve para diminuir o custo da fase derefinamento, a qual basicamente determina o desempenhode uma consulta.

A escolha do primeiro plano é válida, no entanto,somente se a fase de filtragem realmente reduzir drastica-mente o número de objetos a serem analisados na fase derefinamento, ou seja, se o grau de seletividade for baixo.Neste caso, a soma dos custos de ambas as fases de fil-tragem e refinamento tende a ser menor do que o custoresultante da aplicação direta da fase de refinamento paratodos os objetos espaciais armazenados no arquivo dedados (segundo plano), devido principalmente à diferençasignificativa nos custos da fase de refinamento de ambosos planos. Por outro lado, se o grau de seletividade formuito alto, esta diferença torna-se pequena, podendo atéser superada pelo custo associado à fase de filtragem doprimeiro plano de execução, o que resultaria em um me-lhor desempenho para o segundo plano.

Visando proporcionar heurísticas confiáveis paraotimizadores de consulta espaciais, surge então a neces-sidade de se determinar para quais graus de seletividadedos dados a utilização de um método de acesso multidi-mensional não torna-se desvantajosa. Para isto, deve-seinvestigar o desempenho de ambos os planos de execuçãosegundo diferentes graus de seletividade dos dados, desdegraus reduzidos (como exemplo 1%) até graus elevadosde seletividade (tais como, 80% ou 90%). Vale destacar,entretanto, que o ponto de equilíbrio (ou seja, o grau deseletividade dos dados segundo o qual ambos os planosproporcionam o mesmo desempenho no processamento deum dado tipo de consulta espacial) varia em função dométodo de acesso escolhido para dar suporte ao primeiroplano, sendo a investigação voltada a um tipo específicode MAM. Neste sentido, a análise de diversos métodos deacesso é particularmente interessante.

De modo análogo à discussão realizada para consul-tas espaciais de seleção, pode-se também investigar sobreo ponto de equilíbrio no processamento de consultas do

tipo junção espacial, ou seja, identificar o grau de seletivi-dade segundo o qual o uso de uma estratégia baseada emMAM, tal como scan-and-index, produz o mesmo desem-penho que o processamento completo do produto cartesi-ano de dois conjuntos de dados espaciais.

4 Trabalhos Correlatos

Guttman [12] realizou testes de desempenho exclusi-vamente voltados para a validação e ajuste da estrutura R-tree, sendo considerados diferentes valores para os pa-râmetros M e m (número máximo e mínimo de entradas pornó, respectivamente) e diferentes algoritmos de particio-namento de nó (exaustivo, quadrático e linear).

Kriegel et all [14] realizaram testes específicos tantopara métodos de acesso a pontos (2-level grid file, BANGfile, hB-tree e BUDDY hash tree), quanto para métodosde acesso espaciais (R-tree e PLOP hashing). Esse traba-lho possui como característica principal o uso de diversostipos de distribuição de dados, com destaque para distri-buições altamente correlacionadas.

O principal diferencial dos testes realizados por Greene[9] está relacionado com o fato de que os MAMs anali-sados (R-tree, R+-tree, K-D-B-tree e 2D-ISAM) foramimplementados no topo do SGDB POSTGRES através douso de procedimentos especiais com acesso as funções dacamada de abstração de métodos de acesso deste SGBD.

Beckmann et all [1] realizaram testes para ajustar,validar e comparar a estrutura proposta R*-tree com outrosmétodos de acesso, a saber: R-tree com algoritmos de par-ticionamento de nó quadrático e linear, R-tree Greene e 2-level grid file. A execução dos testes foi efetuada em trêsetapas distintas. A primeira foi voltada à análise de desem-penho dos MAMs da família R-tree no suporte a retân-gulos, mas considerando apenas consultas espaciais deseleção. Já a segunda gerou configurações de teste paraconsultas do tipo junção espacial. Por fim, a última etapafoi voltada à análise de desempenho no suporte a pontos.

Günther e Bilmes [10] realizaram testes de desempe-nho para comparar um tipo alternativo de MAM, chama-do cell tree, com os métodos de acesso R-tree Greene eR+-tree. A principal característica da cell tree é que estaestrutura provê suporte direto a objetos espaciais de dimen-são não-zero com geometria arbitrária, em oposição aosuporte restrito e único de retângulos.

A estratégia utilizada nos testes realizados por CoxJúnior [7] é baseada na geração sintética de arquivos dedados e de consultas a partir de um conjunto de fatores deter-minantes de desempenho (tipo de dado, tipo de consulta,tamanho dos objetos, distribuição espacial e dinâmica dosdados). Em particular, foram analisados os métodos R-tree, R-tree Greene, R+-tree, R*-tree e uma variante desta

Page 127: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

8

sem a rotina de reinserção de entradas. Carneiro [3] adap-tou e estendeu a estratégia proposta em [7] visando o uso deum conjunto de dados reais representativos para aplica-ções de gerenciamento de serviços de utilidade pública.

Ooi [15] realizou testes de desempenho voltados paraa validação, o ajuste e a comparação de desempenho daestrutura spatial kd-tree (skd-tree), para ambas versõesestática e dinâmica. Na comparação, foram investigadosos métodos de acesso multidimensionais R-tree, packedR-tree, 4d-tree e mkd-tree.

Kamel e Faloutsos [13] realizaram experimentos paracomparar o método de acesso proposto Hilbert R-tree comrelação aos métodos de acesso R-tree e R*-tree. Na com-paração dos métodos foi utilizada apenas uma únicamedida, número de acessos a disco, a qual foi usada prin-cipalmente na coleta de resultados de desempenho rela-tivos à consultas do tipo intersection range query.

Por fim, Günther et all [11] investigaram o desem-penho das estratégias nested loop, synchronized treetraversal e scan-and-index no suporte a consultas do tipointersection spatial join, containment spatial join, distanceminor-equal spatial join, direction northwest spatial joine enclosure spatial join.

5 Conclusão

Este artigo descreveu o atual estágio da pesquisa sendodesenvolvida pelos autores com relação a métodos deacesso multidimensionais. Ademais, também foram dis-cutidos aspectos relacionados com os fatores determinan-tes de desempenho “grau de sobreposição entre objetosespaciais de dimensão não-zero” e “seletividade dos da-dos”.

Para os fatores acima citados, verificou-se a neces-sidade de novos testes de desempenho, os quais devemincorporar novas metodologias para investigar a influên-cia destes fatores na eficiência dos MAMs. Para o fator“grau de sobreposição entre objetos espaciais de dimensãonão-zero”, uma possível estratégia foi apresentada naseção 2. Já o controle da seletividade dos dados e asdiversas aplicações deste controle foram discutidos naseção 3. Vale destacar que a pesquisa descrita neste artigorepresenta um primeiro passo para a definição de umbenchmark de banco de dados voltado à análise de desem-penho de MAMs.

Referências Bibliográficas

[1] Beckmann, N., Kriegel, H.-P., Schneider, R., Seeger, BThe R*-Tree: An Efficient and Robust Access Method forPoints and Rectangles. In Proc. 1990 ACM SIGMODConference, pp. 322-331, 1990.

[2] Câmara, G., Casanova, M.A., Hemerly, A.S.,Magalhães, G.C., Medeiros, C.M.B. Anatomia deSistemas de Informação Geográfica. 1996. 193pp.

[3] Carneiro, A.P. Análise de Desempenho de Métodos deAcesso Espaciais Baseada em um Banco de Dados Real.Master’s thesis, IC, Unicamp, 1998.

[4] Ciferri, R.R. Um Benchmark voltado à Análise deDesempenho de Sistemas de Informações Geográficas.Master’s thesis, Unicamp, 1995.

[5] Ciferri, R.R, Salgado, A.C. Análise de Desempenho deMétodos de Acesso Multidimensionais: Estado da Arte eDireções Futuras. Technical report, CIN/UFPE, 2000.105 pp.

[6] Ciferri, R.R, Salgado, A.C., Cortez, S.S. Investigando aVariação do Desempenho de Métodos de Acesso Multidi-mensionais em Função da Distribuição Espacial dosDados. Submetido para julgamento no SBBD’2000.

[7] Cox Junior, F.S. Análise de Métodos de Acesso a DadosEspaciais Aplicados a Sistemas Gerenciadores de Banco deDados. Master’s thesis, DCC, Unicamp, 1991.

[8] Gaede, V., Günther, O. Multidimensional AccessMethods. ACM Computing Surveys, 30(2):170-231,1998.

[9] Greene, D. An Implementation and PerformanceAnalysis of Spatial Data Access Methods. In Proc. 5th IEEEICDE, pp. 606-615, USA, 1989.

[10] Günther, O., Bilmes, J. Tree-based Access Methods forSpatial Databases: Implementation and PerformanceEvaluation. IEEE TKDE, 3(3):342-356, September 1991.

[11] Günther, O., Oria, V., Picouet, P., Saglio, J.-M.,Scholl, M. Benchmarking Spatial Joins À La Carte. InProc. 10th Conference on Scientific and StatisticalDatabase, pp. 32-41, Italy, 1998.

[12] Guttman, A. R-Trees: A Dynamic Index Structure forSpatial Searching. In Proc. 1984 ACM SIGMODConference, pp. 47-57, USA, June 1984.

[13] Kamel, I., Faloutsos, C. Hilbert R-tree: AnImproved R-tree using Fractals. In Proc. 20th VLDBConference, pp. 500-509, Chile, 1994.

[14] Kriegel, H.-P., Schiwietz, M., Schneider, R., Seeger, B.Performance Comparison of Point and Spatial AccessMethods. In Design and Implementation of Large SpatialDatabases, v. 409 of LNCS, pp. 89-114. 1989.

[15] Ooi, B.C. Efficient Query Processing in GeographicInformation Systems. In Goos, G., Hartmanis, J., editors,volume 471 of LNCS, chapter 4, pp. 116-135. 1990.

Page 128: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

A comparison among different synchronized tree traversal algorthims for spatial joins

SANDRO DANILO GATTI 1, GEOVANE CAYRES MAGALH AES1,

1Institute of Computing, Univ. of Campinas - Caixa Postal 6176, 13083-970, Campinas, SP, Brasilfgatti,[email protected]

Abstract. Spatial join techniques for spatial access methods were analysed, considering factor such as buffer poolsize, page size and intermediate join indexes ordering criteria. This analysis was based on real data, taken fromGIS applications for utilities. Results of this work assess the way those factors affect spatial join performance andcan be used for tunning the algorithms.

1 Introduction

We all have seen the great advances of informatics. Newand different applications arise every day, followed by thedevelopment of faster machines and sofisticated software.In this context, we have geographic applications, applied inareas such as precision agriculture, urban planning and fa-cilities (telecommunications), and so on. These areas areassisted by Geographic Information Systems (GIS), soft-wares that deal with spatial data.

Spatial data have characteristics that make them dif-ferent from conventional data. That urges the developmentand tunning of algorithms that manage and use these dataefficiently. Among these algorithms and operations, spatialjoins can be included.

This work aims to evaluate some spatial join proposalsbased on buffer pool and page sizes, as well as intermedi-ate join indexes ordering criteria, which affect enormouslyspatial joins performance. It takes and R�-tree as the indexon which the operation will be run.

This paper is organized as follows: section 2 presentsworks that influence this investigation; section 3 presentsa description of the system used in the tests, the analysiscriteria and the data used; the section 4 presents the result-s obtained in this work, as well as some discussions; andfinally, the section 5 presents the conclusions of this work.

2 Related works

2.1 Spatial access methods

Many spatial access methods have been proposed and canbe classified on different ways [1, 2]. This works takes asits base the R�-tree [3], an evolution of Guttman’s R-trees[4].

The R-tree based methods are structures derived fromB-trees. By these, methods the space is hierarchically di-vided into regions, with the lower levels enclosed by higherones, grouping the minimum bounding rectangles (MBR)of objects. Basically, R-trees have two kinds of nodes:

obj 1

obj 2

obj 3 R 1

obj 7

obj 8

obj 9

obj 10

R 3

pt 1

R 2

obj 4

obj 5

obj 6

obj 1 obj 2 obj 3 obj 7 obj 8 obj 9 obj 10obj 7 obj 8 obj 9 obj 10obj 1 obj 2 obj 3

R1 R2 R3

obj 4 obj 5 obj 6obj 4 obj 5 obj 6 pt 1

(a)

(b)

Figure 1: An R-tree (a) and the indexed points and rectan-gles (b).

� leaf nodes, which store information about the indexedobjects in the form (id, MBR), where the first field isthe object identifier and the second one is the objectMBR;

� non-leaf nodes, which contains information as (point-er, MBR), wherepointer is a pointer to a node of alower level andMBR is and MBR that encloses the M-BR of the children node.

Every node is stored in a disk page, which maximumcapacity isM entries like (pointer, MBR) or (id, MBR). Theminimum number of entries ism � M

2.

Figure 1 shows the points and rectangles indexed byan R-tree. Note that the MBRs that belong to the same lev-el can intersect. This structure is followed by conventionalR-tree and by the R�-tree. The difference between R-treeand R�-tree remains in the overflow and insertion treatmen-t algorithms, which, in the R�-tree implementation, try todecrease the MBRs overlapping and coverage areas.

Page 129: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

2.2 Spatial join methods

After the develpment of spatial access methods, research ef-forts turned to the develpment of more efficient algorithmsof insertion, deletion and querying. But the most impor-tant for users are queries and, among queries, spatial joinsdeserve special attention.

Spatial joins are an important class of spatial query.This kind of query is used to answer questions like “Whichpublic buildings are close to squares?” or “Which roadscrosses riverX?”.

These operations are analogous to relational joins, thatuse conventional data and also demand lots of computation-al efforts. But, instead of dealing with conventional data,spatial joins deal with spatial data and spatial predicates,such as “intersection”, “containment”, among others.

On this fact resides another difference between spatialjoin and relational joins: the last one frequently uses the e-quality criteria as comparison predicate, while the first onehardly uses equality, using more frequently intersection a-mong objects. The predicates used on spatial joins hindersthe use of algorithms for conventional joins.

This is initially due to the fact that spatial data do nothave a total natural ordering which preserves spatial locali-ty. Besides, conventional joins algorithms are optimized forequality. But spatial joins hardly ever use equality, whichmakes it difficult the use of conventional algorithms.

The researches in this area resulted in some methods,optimized for use when there are not indexes available onthe entries, when only one entry is indexed, and when bothentries are indexed.

When there are not indexes available, it is possible toapply a technique that uses partitioning, assigning tuplesto buckets and using a plane-sweeping technique. Meth-ods that use this approach are the PBSM (Partition BasedSpatial-Merge Join) [5], the SSSJ (Scalable Sweeping-Ba-sed Spatial Join) [6], theSpatial Hash-Join [7] and anothervariant of this one, introduced by Zimbr˜ao in [8].

If only one of the sets are indexed, it’s possible to usean scan-and-index approach, or build a run-time index onthe non-indexed set, and then run the join. Proposals whichattack this problem are theseeded-tree, presented in [9],and theSISJ (slot index spatial join), presented in [10].

Finally, if both sets are indexed, a general join methodcan be applied, tunning it to the chosen access method.A grid-based access method could use some hashing tech-nique and a tree-based access method could use a synchro-nized tree traversal (STT) technique [11, 12, 13].

Spatial joins, as well as other spatial queries, can berun in two steps:filtering, when candidates to the answerset are chosen andrefinament, when the real shape of theobject is retrieved and evaluated against the predicate. Theapproaches that should be paied attention to, when dealingwith two indexed sets, are the STT methods.

Block Manager

Method

Spatial Access

Method

Spatial Join

Libraries

Auxiliary

Buffer Pool

Manager

Database

Figure 2: The system architecture.

3 Implementation

This work emphasizes time requirements, given in terms ofI/O operations. The join methods chosen for implementa-tion are the ones based on STT, presented in the followingworks [11], [12] and [13].

3.1 System architeture

A modularized system was implemented in order to easemethods evaluation, which gives total control of the opera-tion to the researcher. It is formed by the disk abstractionmodule (DAM), the spatial join module (SJM), the indexmodule (IM) and auxiliary libraries modules (ALM). Thesemodules were implemented in the C language and the testswere run on a SUN SparcStation 20, with 128 megabytesof memory.

The index and disk abstraction modules where reused,with some modifications, from previous works [2, 14]. Thesystem architecture is shown in Figure 2.

The DAM is the responsible for the interface betweenthe system and the SJM, the IM and the operating system.It also controls a buffer pool and parameters such as bufferpool size, page size, amount of pages to be pinned in thebuffer pool and page replacement policies. The IM keep-s the trees indexing and data handling. By now, our workuses R�-trees, but can also incorporate other indexing meth-ods.

The SJM includes three spatial join methods: thenest-ed loop (NL) [11], a depth-first (DF) [12], and abreadth-first (BF) [13]. The ALM keeps auxiliary functions, suchas sorting, list manipulation, and other operations.

3.2 The data

The data used in our work is a real set, obtained from SA-GRE Project (Sistema Automatizado de Gerˆencia de RedeExterna) [15, 16, 17], developed by Centro de Pesquisae Desenvolvimento (CPqD). This system automatizes pro-cesses related to management, planning, designing, expan-sion, among other operations, of an outside telecommunica-

Page 130: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

Figure 3: MBRs referring tocity set.

tion plant. They are representative in applications such aspower distribuition facilities, telephony, water distributionfacilites, and others.

These data are constituted basically by a sequence ofdouble float elements. Every four doubles form a MBR inthe form(xmin; ymin; xmax; ymax). These data are kept inthree different sets: the first contains points, namedpoles,the second contains rectangles, namedblocks and the thirdcontains points and rectangles, namedcity, shown in Figure3.

The poles set contains 13,813 MBRs, theblocks setcontains 2,473 MBRs and thecity contains 66.837 MBRs,which includes thepoles andblocks sets and also other ele-ments, such as manholes, cables, pipelines, and others.

The data sets have non-uniform distribution and sizes,mainly thecity set, which also have a high density. Thesesets were indexed into three distinct R�-trees, one for thepoles set, other for theblocks set and another for thecityset. For each set, we have trees with the following pagesizes:1k, 2k, 4k e 8 kbytes.

3.3 Tested queries

All the queries were set to run a join between thepoles andtheblocks sets, which page sizes varying among1k, 2k, 4ke 8 kbytes. Buffer pool sized varied among 2, 4, 8, 16, 24e 32 pages. Different ordering criteria were used to sort theintermediate join indexes (IJI): an ordering byz curve (SZ),and the ordering obtained by the plane-sweeping techniquefor the DF method; the ordering obtained by the plane-sweeping technique (NS), sorting byxmin of one of theentries (SO), sorting by the sum of thex centers of the in-terction MBRs (SS), sorting by thex center of the MBRthat encloses the intersecting MBRs (SC), and an ordering

by a Hilbert curve (SH).Every query was run 10 times, computing the average

CPU time, from the same initial conditions. The buffer re-placement policy was LRU (least recently used).

Other tests were also done, running a join betweenblocks � blocks andcity � city. For this last queries, thebuffer pool size varied from 2 to 256 disk pages.

4 Discussion and results

The results of this work are presented now, divided intoCPU results, memory usage, and I/O results. Except whenexplicitly mentioned, all the results were obtained frompo-les � blocks join.

4.1 CPU time and main memory usage

CPU time is not our main interest. But some measures weredone in order to check the influence of the IJI ordering cri-teria and disk page size in spatial join performance. Fi-gure 4 (a) shows a comparison between the three methods,not considering ordering times, while Figures 4 (b) and (c)shows the results for the DF and BF methods with sorting,respectively.

By the experiments related to CPU, we can see thatall the methods are influenced by page size. This is dueto the fact that, with smaller pages, the tree is higher andthe nodes MBRs enclose a smaller area, containing less el-ements. This allows a greater capacity of filtering interiorlevels of the trees, and have less comparisons.

It’s also possible to see thatplane-sweeping techniquescontribute to reduce de CPU time spent by the BF and DFmethods, comparing to the NL method. On the other hand,the use of sorting increased the CPU time, mainly in the BFmethod, which has to deal with larges IJI.

It is important to say that the BF method used muchmore memory than the other methods in order to store theIJIs, mainly using 1 kbyte and 4 kbytes page. This alsojustifies the peaks existing for the BF curves for 1 kbyteand 4 kbytes pages, the page sizes for which the IJIs hadthe largest sizes.

4.2 I/O operations

We present now the results for the I/O operations obtainedby the NL, DF and BF methods. The NL method was theworst one when runningpoles � blocks. But it’s useful inorder to compare the gains we may have with some policies.

4.2.1 Results for DF method

The Figure 5 shows the results for the DF method, com-paring with the results of NL method. Although not shownhere, the results for 1 kbyte and 2 kbytes pages reflect these

Page 131: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

2

3

4

5

6

7

8

9

10

11

1 2 3 4 5 6 7 8

CPU

Tim

e (s

eg)

Page size (Kbytes)

CPU time for the three method, no ordering

BF no orderingDF no ordering

NL

(a) CPU time not considering ordering time

2

2.5

3

3.5

4

4.5

5

5.5

6

1 2 3 4 5 6 7 8

CPU

Tim

e (s

eg)

Page Size (Kbytes)

Depth−First Join

NSSZ

(b) CPU time for DF method

0

5

10

15

20

25

30

35

40

45

50

1 2 3 4 5 6 7 8

CPU

Tim

e (s

eg)

Page Size (Kbytes)

Breadth−first join

NSSCSHSSSO

(c) CPU time for BF method

Figure 4: CPU time spent by the different methods and acomparison among them.

0

500

1000

1500

2000

2500

5 10 15 20 25 30

Page

Fau

lts

Buffer Size in Pages

Depth−First Join (4 kbytes page)

NLDF with NSDF with SZ

(a) 4 kbyte page

120

140

160

180

200

220

240

260

280

300

320

5 10 15 20 25 30

Page

Fau

lts

Buffer Size in Pages

Depth−First Join (8 Kbytes page)

NLDF with NSDF with SZ

(b) 8 kbyte page

Figure 5: Results for the DF method, using indexes on 4kbytes (a) e 8 kbytes (b).

Page 132: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

1000

2000

3000

4000

5000

6000

7000

8000

5 10 15 20 25 30

Page

Fau

lt

Buffer Size in Pages

Breadth−First Join (1 Kbyte Page)

NSSCSOSSSH

DF SZ

(a) 1 kbyte page

400

600

800

1000

1200

1400

1600

1800

2000

5 10 15 20 25 30

Page

Fau

lt

Buffer Size in Pages

Breadth−First Join (2 Kbytes Page)

NSSCSOSSSH

DF SZ

(b) 2 kbyte page

Figure 6: Results BF method 1 kbytes (a) e 2 kbytes (b)pages.

results. It’s possible to see that the improvements intro-duced resulted into better performance.

But, opposite to Brinkhoff et al. [12], we believe thatit’s possible the use of the z curve in order to sort the IJI. Intheir work, Brinkhoff et al. said that the gain in terms of I/Ooperations did not paid the extra CPU expenses when sort-ing by z curve. But today we have faster machines and ca-pable of handling the extra workload of z curve sorting by,so that the gap between the expenses of NS and SZ wouldbe very small or vanish.

4.2.2 Results BF method

The BF method, more than the DF method, is highly influ-enced by the order the pairs are place in the IJI. The resultsof the BF tests for 1 kbyte and 2 kbytes can be seen in Figure6, comparing to DF method with SZ.

The best ordering criteria for the BF method was SO,

mainly when we have indexes with different heights. In op-posit to DF method, the BF method was able to read all theneeded pages only once. This is due to this method nature:it’s possible to know all the pages that are necessary to thejoin in advance, allowing a better ordering of the IJI. Onthe other hand, this method demanded much more memorythan the DF method. And, according to the size of this IJI,it would be necessary to store parts of it in the disk, whatcauses more accesses to disk and could nullify the benefit-s of this method. Just to have an idea of how big the IJIcan be, some experiments generated IJIs with 70.7% of theindex size.

4.2.3 Other results

In addition to the experiments shown, where were joinedthe poles and blocks set, other tests were run. These testswere blocks� blocks (BB) and city� city (CC). The resultsfor BB tests are according to the ones already presentedhere. On the other hand, the CC for DF tests diverged fromthese ones.

On CC tests, the NL method was superior to the DFmethod, considering I/O results. The BF method was stillthe best concerning this criteria, but when the buffer poolwas relatively small, NL was better.

These results can be caused by the difference of sizesand distribution of the city set. Some analysis were doneand they show that there are some MBRs that cover greatpart of data space (Figure 3). These large MBRs results in-to large intermediate MBRs, which spread to higher level,increasing the overlapping among internal node. This is di-rectly related to the data insertion routine in the index: if theinsertion routine generates internal levels with high overlap,it will affect performance of all the queries. But, in order toknow, without doubts, the real cause of this anomaly, oth-er experiments should be performed, with data of severalconfigurations, what has been the target of new tests.

5 Conclusions

By the results of these test we can conclude that:

� the increase of page size results the increase of CPUworkload. So, the increase of a page size should befollowed by improvement of the plane-sweeping algo-rithms;

� a good ordering of the IJI is very important to the goodperformance of the join. In our tests, the best were SZfor DF and SO for BF;

� a good performance of spatial joins also depends on abuffer pool with a good proportion of pages. In ourtests, a buffer with good proportion was about 10% ormore of the size of the indexes in pages;

Page 133: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

� the use of the BF algorithm can, depending on the datadensity, turn into prohibitive IJI sizes;

� there are data sets where the use of the DF methodresults into worse performance, in number os I/O op-erations, than the NL method;

� insertion and manipulation routines have fundamentalimportance on all kinds of queries.

In short, spatial join methods could and should be im-proved, taking into account the factor analysed here. Thegain the tunning of these factors could bring justify com-pletely this work and new researches.

Acknowledgements

We would like to thank CPqD for the data sets used in thiswork. Thanks also to CNPq for the financial support of thiswork, through Pronex/SAI project.

References

[1] B. C. Ooi. Efficient query processing in geographicinformation systems, volume 471 of Lecture Notes inComputer Science. Springer-Verlag Inc., New York,NY, USA, 1990.

[2] F. S. Cox and G. C. Magalhaes. Implementacao eanalise de metodos de acesso adados espaciais. In VIISimposio Brasileiro de Banco de Dados, Porto Alegre,Maio 1992.

[3] N. Beckmann, H. Kriegel, R. Schneider, andB. Seeger. The R�-tree: an efficient and robust ac-cess method for points and rectangles. In Proceedingof the 1990 ACM SIGMOD International Conferenceon Management of Data, Junho 1990.

[4] A. Guttman. R-trees: A dynamic index structure for s-patial searching. In Proceedings of the ACM SIGMODConference on Management of Data, 1984.

[5] J. Patel and D. DeWitt. Partition based spatial-merge join. In SIGMOD, pages 259 – 270, Montreal,Canada, Junho 1996.

[6] L. Arge, O. Procopiuc, S. Ramaswamy, T. Suel, andJ. Vitter. Scalable sweeping-based spatial join. InProc. of the 24th VLDB Conference, New York, USA,1998.

[7] M. Lo and C. V. Ravishankar. Spatial hash-joins. InProceedings of the 1996 ACM SIGMOD, SIGMODRECORD, pages 247–258, Montreal, Canada, Junho1996. ACM Press.

[8] G. Z. da Silva. Avaliacao de Juncoes em Bancos deDados Espaciais. PhD thesis, COPPE/UFRJ, Rio deJaneiro, Junho 1999.

[9] M. Lo and C. V. Ravishankar. Spatial joins using seed-ed trees. In Proceedings of the 1994 ACM SIGMOD,volume 23 of SIGMOD RECORD, pages 209–220.ACM Press, Junho 1994.

[10] N. Mamoulis and D. Papadias. Integration of spa-tial join algorithms for processing multiple inputs. InProc. of the ACM SIGMOD International Conferenceon Management of Data, Filadefia – Pensilvania, Jun-ho 1999.

[11] O. Gunther. Efficient computation of spatial joins. InInternational Conference on Data Engineering, pages50–60, Los Alamitos, Ca., USA, Abril 1993. IEEEComputer Society Press.

[12] T. Brinkhoff, H.-P. Kriegel, and B. Seeger. Efficientprocessing of spatial joins using R-trees. SIGMODRecord (ACM Special Interest Group on Managementof Data), 22(2):237–246, junho 1993.

[13] Y.-W. Huang, N. J., and E. A. Rundensteiner. Spatialjoins using R-trees: Breadth-first traversal with glob-al optimizations. In VLDB’97, Proceedings of 23rdInternational Conference on Very Large Data Bases,pages 396–405, 1997.

[14] A. P. Carneiro. Analise de desempenho de metodos deacesso espaciais baseada em um banco de dados real.Master’s thesis, Universidade Estadual de Campinas -UNICAMP, 1998.

[15] G. C. Magalhaes. Telecommunications outside plantmanagements throughout Brazil. In Conference XXProceendings, Nashville, 1997.

[16] G. C. Magalhaes. Projeto SAGRE. Fator GIS,Out./Nov./Dez. 1993.

[17] G. C. Magalhaes. The development of open systemsfor engineering applications. In Proc. of XVII Intl.Conference on AM/FM, Denver - Colorado, Marco1994.

Page 134: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

TerraLib: Technology in Support of GIS Innovation

GILBERTO CÂMARA1, RICARDO CARTAXO MODESTO DE SOUZA

1

BIANCA MARIA PEDROSA1, LÚBIA VINHAS

1

ANTÔNIO MIGUEL VIEIRA MONTEIRO1, JOÃO ARGEMIRO PAIVA

1

MARCELO TILIO DE CARVALHO2, MARCELO GATTASS

2

1 Instituto Nacional de Pesquisas Espaciais - INPE

Av. dos Astronautas, 1758, São José dos Campos (SP), Brazil 12227-001

{gilberto, cartaxo, bianca, lubia, miguel, miro}@dpi.inpe.br2 Catholic University of Rio de Janeiro

Rua Marquês de São Vicente 225, Rio de Janeiro, Brazil 22.453-900

{gattass, tilio}@tecgraf.puc-rio.br

Abstract. This work describes the development of a new GIS library (called TerraLib), that isaimed at providing a rich and powerful environment for the development of GIScience research.The motivation for this proposal is the current lack of either public or commercial GIS librariesthat cater for the diversity of GIS data and algorithms, especially when viewed upon the latestadvances in geographical information science. TerraLib is open source software, allowing acollaborative environment and its use for the development of multiple GIS tools.

Keywords. GIS, Spatial Analysis, Software Libraries.

1. Introduction

The last 20 years have seen dramaticdevelopments in GIS technology andgeographical information science. GIS softwareis now ubiquitous, and there are systems indifferent types and sizes, varying from thedesktop to the corporate user and differentsolutions for Internet data access anddistribution. In the vast majority of cases, suchdevelopments have been industry-driven, withfew exceptions (such as the IDRISI andSPRING systems). Fierce competition andgrowing user demand has resulted in a numberof high-quality solutions, which are largelyresponsible for the vast increase in the GISmarketplace.

However, the vast majority of the industrysolutions is aimed at supporting basic needs ofcapture, archival and visualisation of spatialdata. Recent technological advances haveconcentrated in issues such as user-friendlyinterfaces, interoperability across datarepositories and spatial extensions of databasetechnology. These developments have largelyignored recent advances in GIScience, whichinclude research areas such as geostatistics

(Goodvaerts, 1997), global and local spatialstatistics (Getis and Ord, 1998), dynamicmodelling and cellular automata (Couclelis,1997; White and Engelen, 1997), heuristicsearch (Oppenshaw, 1998), environmentalmodelling (Burrough, 1998), point patternanalysis (Bailey and Gattrel, 1995), uncertaintyassessment and modelling (Heuvelink, 1998;Felgueiras, 1999), spatial econometrics(Anselin, 1988) and neural networks for spatialdata (Medeiros, 1999).

The authors posit that the geographicalinformation community would benefit from theavailability of a general, open source GISlibrary. This resource would make a positiveimpact by allowing researchers and solutiondevelopers access to wider range of tools thanwhat is currently offered by the commercialcompanies. In a similar approach as the GNUand Linux efforts, such development does nothappen by spontaneous growth: there has to be acore set of technologies in which furtherdevelopment can take place. Our proposal forthe development of the TerraLib spatial libraryaims precisely at offering the GIS community abasis for further development.

Page 135: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

The work is divided as follows. Section 2indicates the general principles and ofTerraLib. In Section 3, we present the maincomponents of the library. In Section 4, weillustrate the programming environment ofTerraLib, from a simple set of programs.

2. TerraLib Design Rationale

2.1 Generic Software Requirements

What sort of environment should a GIS librarycater for? It should provide, first of all, supportfor the basic components of spatial data sets:data translators, map representation,geometrical data structures and algorithms. Italso needs to support the establishment of datamodels for GIS data, without imposing strongconstraints on their use. It also needs to provideuser interface tools, which may be used forsimple applications.

The need for perform efficient datatranslation is the single most important designconsideration in TerraLib. Most users alreadyhave their data in an existing system and willwant to perform analysis and exploration usingtechniques not available in their original system.There should be support for inclusion of tabulardata, which has been assigned a geographicalreference (as a census tract number or azipcode).

Map representation and cartographicprojection tools form a basic core of a GISlibrary. The library should support a basic coreof cartographic projections and a set oftechniques for reprojection and integration ofspatial data. It should be very easy to addsupport for new projections and datum.

Algorithms form a basic core of mostsuccessful research efforts. In many GISlibraries, the misuse of object-orientedprinciples has resulted in classes that containboth the underlying data structure and thecorresponding set of algorithms. In this case, thealgorithms would be unecessarily linked to aparticular type of data structure. Therefore,TerraLib algorithms are to designed asindependent entities, which do not belong to aparticular class.

The traditional geometrical data structuresused for geographical data include vector datastructures (points, lines, polygons, triangularmeshes), raster structures (matrices) andrelational structures (tables). Such structures

also need underlying support for indexingstructures such as R-trees.

In the case of data models, one of theimportant advances in GIScience in the 90’s hasbeen the widespread acceptance of a generalconceptual data model for geographical data. Inthis model, geographical reality is representedas either fully definable entities (features) orsmooth, continuous spatial variation (fields).Although this simple dichotomy has beensubject to objective criticism (Couclelis, 1992;Burrough and Frank, 1996), it has proven auseful frame of reference. It has adopted, withsome variations, in the design of the latestgeneration of GIS technologies, such asSPRING (Câmara et al, 1996), Arc/Info-8 andOpenGIS.

We have designed TerraLib to allowdifferent alternatives of data models to beimplemented from the same software basis.Therefore, we emphasized a very loose couplingbetween the data model classes (on one side)and the algorithms and data structures (on theother side). Altough this de-coupling may leadto some duplication, it should be useful to beable to derive different applications based onTerraLib that might use the data model ofdifferent systems. For example, one developermay want to integrate TerraLib to existingsystems such as GeoMedia or ARC/INFO-8.Another may develop OpenGIS-compliantapplications.

2.2 Support for Innovative Research

The preceding discussion was centred in thesupport of conventional GIS applications.However, in order to be useful as a support forinnovative research, TerraLib needs, from itsconceptual base, to consider the needs ofemerging GIS research areas, such as:

• Uncertainty modelling, where each field iscoupled with information about spatialimprecision, which is propagated in mapalgebra operations (Heuvelink, 1998).

• Cellular automata, whose application toGIS requires that each cell has its owninherent set of attributes (as distinct from asingle state) which represent its relevantphysical, environmental, social, economicor institutional characteristics. (Couclelis,1997; White and Engelen, 1997).

• Dynamic modelling (Burrough, 1998)requires the support for timers andinteractive procedures.

Page 136: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

• Applications such as Spatial Statistics andSpatial Interaction Models require the useof spatial proximity matrices for supportingspatial relations among elements.

2.3 Development Strategy

Since TerraLib was designed to support anopen, collaborative development environment,some basic principles are in order:

1. The interface for each class should be keptas minimal as possible. The introduction ofnew algorithms and tools should not affectalready-existing code, include keepinginclude files intact.

2. The implementation of the geometrical datastructures is kept completely separate fromthe programming interface, using the“pimpl” idiom (Sutter, 2000).

3. There should be a maximal degree ofortogonality between the components of thelibrary, and they are designed to be usedindependently.

We are not committed to a singleprogramming style, but use the ideas of multi-paradigm programming, which advocates thecombination of different techniques such asobject-oriented, algorithmic and genericprogramming [Coplien, 1999]. This technique isparticularly suited to the C++ language[Stroustroup, 1997].

Reuse considerations have also led theauthors to choose C++ as the developmentlanguage. We hope to adapt algorithms thathave been developed for SPRING (Câmara etal, 1996).

3 Software Structure

3.1 Main Components

TerraLib is developed as a multi-tier library,and its first version includes:

• At the higher level, it provides abstract dataclasses to manage and representgeographical information, based on afield/object paradigm, viz.: Feature,Network, Surface, CellArray.

• At the intermediate level, it providessupport for geometrical data structures,data formats, map representation andalgorithms.

• At its lowest level, it provides spatialindexing structures for efficient handling oflarge data sets.

3.2 Geometrical and Attribute Structures

The data structures include:

• TeCoord2D1: a 2D coordinate.

• TeLine: a vector of 2D coordinates, thatcan be associated to a height.

• TeLineSet: a set of lines.

• TePolygon: composed of Lines and ofother Polygons (its children).

• TePolygonSet: a set of polygons.

• TePointSet: a set of 2D samples.

• TeTIN: a triangular mesh.

• TeGrid: a raster data structure (used forimages and grids).

• TeTable: an attribute table used forlinking to relational DBMSs

Each instance of a data structure has a uniqueidentifier, to enable its linking and storage in aDBMS. We illustrate some of these geometricalstructures and its relationships in Figure 1.

Figure 1 – Pre

1 Throughout thefunctions are indica

TePolygonSet

TePolygon

TeGeometry

olygon and Line vectorpresentation

text, TerraLib classes andted with a Te- prefix.

TeLineSet

TeLine

TeCoord2D

Page 137: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

As can be seen in the Figure 1, theTePolygonSet class is a composite ofTePolygon. A TePolygon is a compositionof TeLine and/or other TePolygons (itschildren). A TeLineSet is a composition ofTeLines that are a composition ofTeCoord2D.

A basic pattern for use in GIS geometricalstructures is the Composite pattern (Gamma etal, 1996). As the Composite pattern can be usedin another components of a GIS we propose aparameterised implementation of it (shownpartially below):

template <class T>class TeGeomComposite{

public:

typedef vector<T> Components;typedef Iterator<T> TeGeomIterator;

// -- ContructorsTeGeomComposite(){}

// -- Destructorvirtual ~TeGeomComposite();

// -- Methodsvoid Add ( const T& component );int Size();T& Next() const ;T* First();T* Last();

protected:Components components_;};

When considering the implementation ofthe geometry classes, we should allow fordifferent alternatives to be tried and tested forefficiency and convenience. For example, aTePolygonSet can be represented as agraphical file or might be integrated into arelational database, with one polygon per tuple,in a similar fashion as the Simple Featuredefinition of the OpenGIS consortium (OpenGIS, 1999).

To allow for different implementations ofthe Polygon class to be defined, we have usedthe so-called “pimpl” idiom (Sutter, 2000). Thisprogramming idiom proposes a separationbetween a class and its implementation, byusing an opaque pointer to hide theimplementation details.

In the case of Polygons, a special case ofthe Composite pattern arises: a Polygon iscomposed of Lines and of other Polygons (itschildren), as it can be seen below.

class TePolygon{public: // public members ...private: struct TePolygonImpl *pimpl;};// sample implementation// there could be alternativesstruct TePolygonImpl{class TeLine2DSet: public TeGeomComposite<TeLine2D> {}class TeChildSet: public TeGeomComposite<TePolygon> {}

TeLine2DSet lines_; TeChildSet children_;};

Therefore, the implementation of thegeometrical data structures has required acombination of Design Patterns and GenericProgramming paradigms.

3.3 Algorithms and Iterators

For Terralib algorithms, we have adopted theprinciples of generic programming: “decidewhich algorithms you want; parametrize themso they work for a variety of suitable types anddata structures” (Stroustroup, 1997). Followingthe example of the STL library, which is nowpart of the C++ standard, we propose the use ofthe iterator concept, as a basis for . Iterators area generalisation of the idea of pointers, and areused in the STL to separate the containers fromthe algorithm [Austern, 1998].

The algorithms are defined in terms ofdifferent types of iterators of spatial data types,such as: TePolygonIterators,TeLineIterators, TePointIterators,and TeTableIterators.

In order to illustrate the concept, wepresent the case of a line simplificationalgorithm. Such an algorithm can be applied inthe case of a set of lines, as well as in the caseof a set of polygons. We would like to designsuch a function as independent entity, whichdoes not belong to a particular class, as shownbelow.

Page 138: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

void TeSimplifyLines ( TeLineIterator begin, TeLineIterator end ) ;intmain(){ TeLineSet ls; TeImportE00(ls, “lines.e00”); TeSimplifyLines (ls.FirstLine(), ls.LastLine());

TePolygonSet ps; TeImportE00(ps, “polygons.e00”); TeSimplifyLines (ps.FirstLine(), ps.LastLine());//....return 0;}

The parameters for the SimplifyLinesfunction are TeLineIterators. TheSimplifyLines algorithm doesn’t need toassume anything beyond minimal functionalityguaranteed by the TeLineIterator, whichinclude functions to have access to aTeLineSet by traversing it in some order.

Note that both LineSet and PolygonSetclasses need to provide method that returnTeLineInterators. The geometricstructures are thus responsible for providing theIterators that are meaningful for the use of thealgorithms.

3.4 User Interfaces and Visualisation

Strictly speaking, user interfaces andvisualisation are not an essential part ofTerraLib. Our emphasis is an efficient andflexible set of data structures and algorithms,allowing different applications to produce theirown interfaces or the linking of TerraLibprograms to existing environments.

However, in many cases, users may want asimple visualisation and user interfaceenvironment that allows for rapid prototyping ofideas and new concepts. For those purposes, weprovide a set of GUI and visualisation classes,which are based on the Qt public-domainsoftware library (Troll Tech, 2000).

The TeApplication class provides a simpleinterface for visualisation of GIS data. Itprovides a method Run() for creating an eventloop, much similar to the operation of the Motifand MFC toolkits. The methodShow()instructs the user interface to display adata, which may be a simple geometricalstructure or a more complex layer.

3.5 Support for Innovative Research

The applications described in Section 2.2have motivated some design decisions:

• In TerraLib, each field of Surface type isassociated with an Uncertaintyinformation. This field is part of therepresentation of the surface and access toit is available for error propagationfunctions.

• A new type of field, a CellArray type, isintroduced to handle multiple attributes fora single cell, and make it easier to definetransitional rules.

• Support for a Graph geometrical datastructure is included, to allow for bothspatial interaction algorithms and differentalternatives for proximity measures(O’Sullivan, 1999).

4. Programming in TerraLib

4.1 Hello, GIS World !

We consider that the best description of GISlibrary is achieved by showing how it should beused in practice. Thus, we present a set ofprograms, starting from simple examples, whichillustrate the principles and practice ofprogramming in TerraLib. This descriptionassumes a familiarity with the basics of GISdata structures and algorithms, as well as withthe general programming in C++. Let us start byconsidering a problem: what is the simplest GISprogram that can be written?

#include <teapplication.h>#include <tegeometry.h>#include <tedataconversion.h>int main (){

TeApplication app;TePolygonSet ps;TeImportShape (ps, “BR.shp” );app.Show (ps);app.Run();

}

This program reads a file containing a dataset, in “shapefiles” format, and displays it. Thefirst line of this program creates an instance ofthe TeApplication class, which isresponsible for providing a simple interface forvisualisation of GIS data. Since TerraLib isdesigned to be standalone, the use of this classis optional. The visualisation procedures

Page 139: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

associated to TerraLib are described in the“User Interface and Visualisation” section.

The next line indicates a data conversionprocedure (in this case, an ARC/View shapefilecontaining the co-ordinates of the counties ofBrazil, or municipios in Portuguese). TerraLibprovides efficient data translation tools forformats such as SHP, MIF and E00. Note thatwe have defined TeImportShape as afunction rather than a method for aTeGeometry class in keeping with principle 1(minimal interfaces).

The next line simply indicates theexistence of a method Show(), associated tothe TeApplication class, which requests tothe user interface the display of data. The lastline indicates that the “main loop” of theTeApplication class is called. Thiscommand creates a window interface.

4.2 Simple Geometrical Algorithms

The next step is to apply some simplegeometrical algorithms. For example, let ussuppose we want to read a data set containingthe counties of Brazil as a set of polygons, andwe would like to generate a Voronoi diagramfrom the centroids of these polygons. This isdone as follows:

#include <tegeometry.h>#include <tedataconvert.h>#include <tealgorithm.h>int main (){

TePolygonSet ps;TeImportShape( ps, “Br.shp”);

TePointSet pt;

TeGenerateCentroids( ps.FirstPoint(), ps.LastPoint(), pt.FirstPoint() );

TePolygonSet voron;TeVoronoi (

pt.FirstPoint(), pt.LastPoint, voron.FirstPoint() );

TeExportGBR(voron, “Vor.gbr”);}

This program creates a TePointSetfrom an existing TePolygonSet (read from aSHP file), and generates a Voronoi diagramwith the TeVoronoi function. The result is

exported to a file in the GEOBR data format.Note the use of iterators as interfaces to thealgorithms.

4.3 Data Management

In the preceding examples, there is no abstractmodelling of this data set, no controlorganisation is in place, and there are noattributes associated to the geometricalstructures. If we want data management and toassociate attributes to the geometrical structures,we need to introduce the concept of ageographical database (or Geodatabase forshort). The Geodatabase class supports archivalof both geometrical and descriptive parts of GISdata set. Additionally, it uses existing relationaldata base technological solutions (such asMySQL and ODBC) as basis for managementof tables.

#include <teapplication.h>#include <tegeodatabase.h>#include <telayer.h>#include <tegeometry.h>int main (){

TeApplication app;TeGeoDataBase db;db.Open (“World”);TePolygonSet ps;

TeImport (ps, SHP, “BR.shp” );

TeTable t; db.ImportTable(t,“CA”,“Br.dbf”);

TeLayer br; db.NewFeature(br, “Br”, ps); db.Associate (br, t, “IBGE_ID”);

app.Show ( br );app.Run();

}

The above program requires theinstantiation of a GeoDatabase, which isresponsible for data management and handlingattribute information. In this program, a higher-level structure (a Layer consisting ofFeatures) is created from lower-levelstructures (a PolygonSet and a Table), infour steps:

• a geometry is created from existing data;

• a table is created from an external source;

• a new layer is instantiated, from an existinggeometry;

• the attributes and the geometry areassociated, by means of one attribute whichindicates a spatial index.

Page 140: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

This procedure allows for the association ofmany attribute sets to the same geometry (andvice-versa).

These examples show that even thesimplest GIS application needs some proceduresfor data management and abstract modelling.Otherwise, the library user is left with asubstantial burden to construct higher-levelstructures. They also show the application ofour design rationale in some simple, butsignificant examples.

5. Conclusion

This paper outlines the rationale for theinitial version of TerraLib, an open sourcesoftware library aimed at offering the GISciencecommunity a basis for shared development.This proposal is based on more than 15 yearsexperience in GIS software development by thegroups of the of Brazil’s National Institute forSpace Research (INPE) and the CatholicUniversity of Rio de Janeiro. By making aversion of the proposal available for publicdiscussion, we hope to attract partners for long-term co-operative partnerships.

Acknowledgements

This work has been partially financed by a jointNSF/CNPq project on "Interoperabilty on GIS"(process CNPq 480322/99).

References

ANSELIN, L. 1988. Spatial Econometrics,Methods And Models. Dordrecht: KluwerAcademic.

ANSELIN, L. 1998. Interactive techniques andexploratory spatial data analysis. In: P. Longley,M. Goodchild, D. Maguire and D. Rhind (eds.),Geographical Information Systems: principles,techniques, management and applications, pp.251–264. New York: Wiley.

AUSTERN, M.H., 1999. Generic Programmingand the STL: Using and Extending the C++Standard Template Library. Reading, Addison-Wesley, 1999.

BAILEY,T.; GATTRELL, A., 1995. Spatial DataAnalysis by Example. London, Longman.

BURROUGH, P.; FRANK, A., 1996. (eds)Geographic Obejcts with IndeterminateBoundaries. London, Taylor and Francis.

BURROUGH, P, 1998. “Dinamic Modelling andGIS”. In: Longley, P., Brooks, S., McDonnell,R., Macmillan, B. (eds), “Geocomputation: APrimer”. New York, John Wiley & Sons.

CÂMARA, G.; SOUZA, R.C.M.; FREITAS, U.M.;GARRIDO, J.C.P., 1996 “SPRING: IntegratingRemote Sensing and GIS with Object-OrientedData Modelling”. Computers and Graphics,vol.15 , n.6, pp.13-22.

CÂMARA,G.; SOUZA, R.C.M.; MONTEIRO,M.V.; PAIVA, J.; GARRIDO, J., 1999. “HandlingComplexity in GIS Interface Design”. In:Proceedings of the I Brazilian Workshop onGeoInformatics, Campinas, São Paulo.www.dpi.inpe.br/geoinfo99.

COPLIEN, J. Multi-Paradigm Design for C++.Reading, Addison-Wesley, 1999.

COUCLELIS, H., 1992. “People ManipulateObjects (but Cultivate Fields): Beyond theRaster-Vector Debate in GIS”. In: Frank, A.;Campari, I. and Fomentini, U. (eds) Theoriesand Methods of Spatio-Temporal Reasoning inGeographic Space, pp. 65-77. Berlin, Springer.

COUCLELIS, H., 1997, “From cellular automatato urban models: new principles for modeldevelopment and implementation”,Environment and Planning B: Planning &Design, 24, 165-174.

DEUTSCH, C.; JOURNEL, A. 1998. GSLIB:Geostatistical Software Library and User’sGuide. New York, Oxford Univeristy Press.

FELGUEIRAS, C. 1999. "Modelagem Ambientalcom Tratamento de Incertezas em Sistemas deInformação Geográfica: O ParadigmaGeoestatístico por Indicação”. PhD Thesis inComputer Science, INPE (in Portuguese).

GETIS, A., ORD J. K., 1996. "Local spatialstatistics: an overview". In: Spatial Analysis:Modelling in a GIS Environment. (LONGLEY,P.;BATTY,M., eds), pp. 261-277. New York, JohnWiley.

GOOVAERTS, P. 1997. Geostatistics for NaturalResources Evaluation. New York, OxfordUniversity Press.

HEUVELINK, G. 1998. Error Propagation inEnvironmental Modelling with GIS. London,Taylor and Francis.

LEONDES,C. (ed), 1997. Image Processing andPattern Recognition (Neural Network SystemsTechniques and Applications Series, Vol 5).New York, Academic Press.

Page 141: GeoInfo 2000webserver2.tecgraf.puc-rio.br/~lhf/geoinfo2000/anais/...O GeoInfo 2000 foi realizado em paralelo com o GEOBrasil 2000 com o objetivo de aproximar a comunidade acadˆemica

LONGLEY, P., 1998. (ed) Geocomputation: APrimer. New York, John Wiley and Sons, 1998.

MEDEIROS, J.S., 1999. Geographical Databasesand Artificial Neural Networks: Technologies inSupport of Land Management. PhD Thesis inGeography, University of São Paulo (inPortuguese).

OPENSHAW, S., 1998. “Building automatedGeographical Analysis and ExplorationMachines”. In: Geocomputation: A primer(Longley, P. A., Brooks, S. M. and Mcdonnell,B. (eds)), p. 95-115. Chichester, MacmillanWiley.

O'SULLIVAN, D. 1999. Exploring the structureof space: towards geo-computational theory. In:Proc. IV International Conference onGeoComputation. Mary Washington College,USA.<www.geovista.psu.edu/geocomp/geocomp99>.

STROUSTRUP, B. 1997. The C++ ProgrammingLanguage. Reading, Addison-Wesley.

SUTTER,H., 2000. Exceptional C++. Reading,Addison-Wesley.

TROLLTECH, 2000. The Qt Interface Library.www.trolltech.com.

WHITE, R.; ENGELEN, G., 1997 ‘CellularAutomata as the Basis of Integrated DynamicRegional Modelling’ Environment and PlanningB, Vol.24, pp.235-246.