projeto inicial - Bacharelado em Ciência da Computação

Propaganda
Faculdade SENAC
de Ciências Exatas
e Tecnologia
CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
OPERADORES ESPACIAIS TOPOLÓGICOS PARA SISTEMAS DE INFORMAÇÃO
GEOGRÁFICA
Docente: Prof. Ms. Luciano Silva
Projeto de Pesquisa apresentado à Comissão de Pesquisa
Faculdade SENAC de Ciências Exatas e
Tecnologia
para desenvolvimento no período Fevereiro/2002 a Fevereiro/2003
São Paulo
Janeiro/2002
1. Título de Projeto
Operadores Espaciais Topológicos para Sistemas de Informação Geográfica.
2. Introdução
Geoprocessamento é um conjunto de tecnologias voltadas à coleta e ao tratamento
de informações espaciais para um objetivo específico. As atividades envolvendo o
geoprocessamento são executadas por sistemas específicos chamados de Sistemas
de Informação Geográfica (GIS).
Sistemas GIS são destinados ao processamento de dados referenciados
geograficamente (ou georeferenciados), desde a sua coleta até a geração de saídas
na forma de mapas convencionais, relatórios e arquivos digitais, devendo prever
recursos para sua armazenagem, gerenciamento, manipulação e análise. Um GIS
integra numa única base de dados informações espaciais provenientes de dados
cartográficos, dados de censo e cadastro urbano e rural, imagens de satélite, redes e
modelos numéricos de terreno. Tais sistemas oferecem, ainda, mecanismos para
combinar as várias informações, através de algoritmos de manipulação e análise,
para consultar, recuperar e visualizar o conteúdo da base de dados e gerar mapas.
Atualmente, sistemas GIS são utilizados como:
o
o
o
Ferramenta para produção de mapas;
Suporte para análise espacial de fenômenos;
Banco de dados geográficos, com funções de armazenamento e
recuperação de informação espacial.
GIS são formados, essencialmente, pelas componentes mostradas na figura abaixo:
A interface representa o nível mais alto de abstração no sistema. Ela permite, por
exemplo, que usuários não especializados em banco de dados acessem informações
de forma bastante simplificada definindo, por exemplo, uma área sobre um mapa
para consulta. Vários sistemas GIS comerciais já disponibilizam tal interface no
ambiente WWW, como os sistemas SpringWEB, ArcView e GeoMediaWeb.
O subsistema de entrada e integração de dados representa o nível mais básico no
sistema. Sensores e satélites configuram o vocabulário básico de tal subsistema,
assim como tecnologias envolvendo GPS. Processos complexos de filtragem de
dados são utilizados como, por exemplo, transformadas de wavelets.
A visualização e plotagem configuram os serviços de exibição de dados do sistema.
Problemas típicos tratados nessa componente são esquemas de representação
gráfica, como as feições de objetos, ou visualização de objetos tridimensionais, tais
como terrenos.
A gerência de dados espaciais e o banco de dados geográfico trata dos esquemas
de representação interna de dados. Além das técnicas tradicionais de banco de
dados, tais como esquemas relacionais ou objetos, mecanismos avançados de
estruturas de dados e lógica temporal têm sido utilizados para estruturação de tais
componentes.
A parte central em sistemas GIS é representada pela componente de consulta e
análise espacial, objeto deste projeto de pesquisa. Consultas em sistemas GIS são
muito mais complexas que em sistemas de banco de dados convencionais. Por
exemplo, considere-se a seguinte consulta: “Encontrar todos os rios brasileiros que
atravessem pelo menos três estados e que cortem alguma rodovia interestadual”. A
menos que se esteja utilizando procedimentos armazenados num banco de dados, a
implementação de tal consulta em SQL pode ser muito complexa, dependendo de
quais dados do problema estão armazenados no banco.
Porém, tal consulta pode ser tratada do ponto de vista geométrico da seguinte forma:
“Encontrar todos os objetos geométricos RIO que toquem pelo menos três objetos
geométricos ESTADO e que possuam intersecção com objetos geométricos
RODOVIAS INTERESTADUAIS”. Nesta reestruração, estão presentes dois
operadores espaciais importantes: TOUCH (toque) e INTERSECT(intersecção). Com
exceção do gerenciador de banco de dados Oracle, nenhum outro gerenciador
disponibiliza estruturas de dados e operadores para tratar as consultas espaciais da
forma descrita anteriormente. Assim, é de grande interesse computacional o
desenvolvimento de algoritmos e estruturas de dados para tratar tais consultas.
O objetivo do presente projeto é construir um ambiente geométrico, utilizando
ferramentas de estruturas de dados e geometria computacional, para a
implementação eficiente de operadores topológicos, uma classe importante de
operadores espaciais, em sistemas GIS.
3. Justificativa e Relevância do Tema
A tecnologia de geoprocessamento irá se converter numa das principais ferramentas
de gerenciamento dos recursos naturais e urbanos do Brasil até o final da década. A
partir da Constiuição de de 1988 e do congresso RIO’92, problemas ambientais e
urbanos saíram do círculo de grupos ecológicos e organizações não-governamentais
para adquirir características de questões nacionais. Tais problemas são
permanentes e tendem a crescer nas próximas décadas. No contexto de um novo
modelo de desenvolvimento para o Brasil, o planejamento natural, agrícola e
zoneamento econômico serão temas de qualquer agenda política. Assim, o
desenvolvimento de tecnologia nacional para dar suporte em termos de
geoprocessamento para tais questões é importante sob o ponto de vista tecnológico
e político.
Durante as décadas de 80 e 90, o Brasil foi capaz de desenvolver tecnologia de
geoprocessamento comparada aos padrões internacionais. Por exemplo, os projetos
SGI/SITIM e SPRING desenvolvidos pelo INPE. Atualmente, junto com o INPE,
centros como a UNICAMP, COOPE, EMBRAPA e PUC-RJ têm desenvolvido
tecnologia de ponta para geoprocessamento. O enfoque principal dos trabalhos tem
sido na área de modelagem de dados, especialmente com a busca de generalização
de diversos processos como, por exemplo, a abordagem geral de Câmara[CAM95].
Especificamente na área de implementação de operadores espaciais topológicos,
poucos trabalhos têm sido publicados por autores nacionais e internacionais.
Operadores topológicos constituem a base para definir várias construções em
linguagens de consulta espaciais, tais como consultas baseadas em intersecção ou
inclusão. Um problema fundamental que aparece em tal área é a definição mínima
de um conjunto de tais operadores. Freeman[FREE75] define uma grande classe de
tais operadores(à esquerda, à direita, acima, abaixo, atrás, na frente, perto, longe,
adjacente, toque, dentro, fora e entre). Feutechwangler[FEU93] usa seis operadores
(adjacente, proximidade, subdivisão, sobreposição, vizinhança e subregião),
enquanto que Egenhofer e Herring[EGE90] propõe os operadores disjunto,
conhecimento, igual, dentro, contém, coberto e sobreposição. Clementi[CLE93] usa
um conjunto de cinco operadores básicos(dentro, sobreposição, toque, cruzamento e
disjunto).
O suporte geométrico para implementação de tais operadores não vêm, atualmente,
da área de GIS mas da geometria computacional. Os trabalhos normamente estão
vinculados a operadores particulares, como em Chazele e Edelsbrunner[CHA96],
Gutting et al.[GUT95], Kriegel et al.[KRI91], Naher[NAH95] e Nievergelt e
Preparata[NIE95]. Uma implementação mais geral de operadores topológicos é
apresentada por Chang e NG[CHA97]. Fabris et al.[FAB97][FAB98] apresentam
algoritmos eficientes e robustos para o operador de inclusão. Como evidenciado pela
escassa quantidade de trabalhos, o problema de uma implementação eficiente e
robusta de operadores topológicos não é uma tarefa simples, mesmo para
geometrias mais simples, como retas e curvas.
4. Objetivos da Pesquisa
Eficiência e robustez numérica são os requisitos mais fundamentais para qualquer
operador topológico. Assim, o desenvolvimento de um ambiente geométrico para
implementação de tais operadores é de grande interesse computacional.
Assim, são objetivos do presente projeto:
o
o
o
o
Definição de um conjunto básico de operadores topológicos
Construção de um suporte geométrico eficiente e robusto para os
operadores
Implementação dos operadores
Integração com ferramentas convencionais de GIS
Como resultado do projeto, pretende-se a publicação dos resultados em congressos
e periódicos especializados em GIS e geometria computacional.
5. Conceitos, Métodos e Técnicas de Pesquisa
A definição do conjunto básico de operadores será feita via técnicas de
especificação algébrica, que permite uma verificação a priori da corretude do
operador. Tal forma de especificação permite, ainda, o refinamento sucessivo para
tornar o código final menor.
O suporte geométrico a ser utilizado é o paradigma do Teste Interior/Exterior de
Jordan, estabelecido na dissertação de mestrado de Silva[SIL98]. Tal paradigma
permite um controle bastante rigoroso da precisão e robustez numéricas, uma vez
que só utiliza aritmética inteira como suporte de computação.
A implementação dos operadores deverá ser feita com a linguagem Java, que
permite uma alta portabilidade das aplicações e fácil integração com ferramentas de
banco de dados. O gerenciador de banco de dados a ser utilizado é o Oracle pois,
além de permitir o armazenamento direto de objetos Java, possui uma integração
muito grande com interfaces GIS, tais como GeoMedia e ArcView.
6. Plano de Pesquisa
O levantamento bibliográfico do estado da arte na área de implementação de
operadores topológicos já foi realizado e se encontra nas referência bibliográficas.
Assim, o plano de pesquisa consta dos seguintes passos:
1. Definição de um conjunto básico de operadores: levantamento de uma
classe básica de operadores topológicos. O objetivo de tal classe é
disponibilizar um suporte para a implementação dos outros operadores
topológicos comumente utilizados em GIS.
2. Especificação algébrica dos operadores: especificação dos requisitos de
cada um dos operadores definidos no item. A linguagem de especificação
utilizará cálculo de predicados de 1a ordem e categorias/funtores de tipos.
3. Implementação do Teste Interior/Exterior de Jordan: implementação do
teste de pertinência descrito em Silva[SIL98], utilizando a linguagem Java. Tal
teste é a base para a implementação dos operadores topológicos.
4. Implementação dos operadores: implementação, em Java, de cada um dos
operadores especificados no item 2. A implementação será derivada
diretamente do refinamento sucessivo da especificação algébrica.
5. Integração com a base de dados: inclusão dos operadores implementados
no item 4 no gerenciador Oracle.
6. Integração com ferramentas GIS: testes, na interface GIS GeoMedia, dos
operadores acessados diretamente da base Oracle.
7. Cronograma de execução do projeto
Procedimentos
FEV
2002
Definição do conjunto de X
operadores
Especificação algébrica
Implementação
teste
Interior/Exterior
Implementação
dos
operadores
Integração com base de
dados
Integração
ferramenta
GIS
Preparação de publicação
MAR ABR
2002 2002
MAI
2002
JUN
2002
JUL
2002
X
X
AGO
2002
SET
2002
OUT
2002
X
X
X
NOV DEZ
2002 2002
JAN
2003
FEV
2003
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
8. Estimativa de Custos e Origem dos Recursos
Todo o material necessário para o desenvolvimento do projeto já está
disponibilizado no laboratório LIVES ( máquinas, software e bibliografia).
O tempo de dedicação semanal ao projeto será de 20 horas/semana.
9. Referências Bibliográficas
[CAM95] G. Câmara. Modelos, Linguagens e Arquiteturas para Banco de Dados
Geográficos. Tese de Doutorado. São Paulo: INPE, 1995.
[CHA96] B. Chazelle e H. Edelsbrunner. An Optimal Algorithm for Intersecting Line
Segments in the Plane. JACM 39:1, pp. 1--54, 1996.
[CHA97] E.P.F. Chan and J.N.H.Ng. A General and Efficient Implementation of
Geometric Operators and Predicates. Symposium on Large Spatial Databases, pp.
69-93, 1997.
[CLE93] E. Clementini, P. diFelice e P. van Oosterom. A Small Set of Formal
Topological Relashionships Suitable for End-User Interaction. In Proc. 3nd
Symposium Spatial Database Systems, pp. 277--295, 1993.
[EGE90] M.Egenhofer e J. Herring. A Mathematical Framework for the Definition of
Topological Relashionships. In Proc. 4th International Symposium on Spatial Data
Handling}, pp. 803--813, 1990.
[FAB97] A. E. Fabris, L. Silva e A. R. Forrest. An Efficient Filling Algorithm for Nonsimple Closed Curves using the Point Containment Paradigm. In SIBGRAPI'97 (X
Brazilian Symposium on Computer Graphics and Image Processing), pp. 2-9, 1997.
[FAB98] A. E. Fabris, L. Silva e A. R. Forrest. Stroking Polynomial Discrete Bézier
Curves via Point Containment Paradigm. In SIBGRAPI'98 (XI Brazilian Symposium
on Computer Graphics and Image Processing),1998.
[FEU93] M. Feutechwangler. Towards a Geographic Semantic Database Model. PhD
Thesis, Simon Fraser University, 1993.
[FREE75] J. Freeman. The Modelling of Spatial Relations. Computer Graphics and
Image Processing, 156-171, 1975.
[GUT95] R.H. Gutting, T. Rider e R. Schneider. Implementation of ROSE Algebra:
Efficient Algorithms for Real-Based Spatial Data Types. In Proceedings of Advances
in Spatial Databases-Fourth International Symposium,SSD'95, pp. 216-239, Portland,
Maine, Agosto 1995. Lecture Notes in Computer Science 951. Springer--Verlag.
[KRI91] H. Kriegel, T. Brinkhoff e R. Schneider. An efficient Map Overlay Algorithm
Based on Spatial Access Methods and Computational Geometry. In Proceedings of
the International Workshop on DBMS's for Geographic Applications, Capri, 12-17,
1991.
[NAH95] S. Naher. LEDA Manual Version 3.2, TR MPI-I-95-1-002, Max-PlanckInstitut fur Informatik, Saarbrucken, 1995.
[NIE95] J. Nievergelt e F.P. Preparata. Plane-Sweep Algorithms for Intersecting
Geometric Figures. CACM (38), pp. 739-747, 1995.
[SIL98] L. Silva. Algoritmos Geométricos Discretos: Complexidade e Aplicações.
Dissertação de Mestrado. São Paulo:IME-USP, 1998.
Download