TRABALHO INSTALACAO ELETRICA EM EDIFICIO FINAL.docx
Bases de Dados Espaciais para Fogos Florestais
1. 1
Técnicas Avançadas de Bases de Dados :
Bases de Dados Espaciais
Carlos Eduardo Ermida Santos, pg17282, Mestrado em Engenharia e Gestão de
Sistemas de Informação
Resumo: A evolução das tecnologias tem proporcionado de forma mais abundante, novas formas
de visualizar dados. As bases de dados espaciais tentam insurgir-se como resposta às necessidades
das organizações visualizarem dados organizados como formas geométricas de modo a garantir
uma melhor interpretação e aproveitamento. Procurou-se através deste trabalho analisar a utilidade
e funcionalidades da utilização de uma base de dados especial, aplicada num caso concreto, o de
fogos florestais, tendo sido utilizados o Sistema de Gestão de Bases de Dados PostgreSQL, a
extensão PostGIS e a aplicação GvSIG. Verificou-se que estas ferramentas possuem ainda algumas
debilidades mas que permitem visualizar dados de diversas formas bem como utilizar ferramentas
que permitem tirar o melhor partido da informação inserida na Base de Dados.
1. Introdução
Para este trabalho foi seleccionado um conjunto de dados sobre fogos florestais no
Parque Natural de Montesinho, encontrado em:
http://archive.ics.uci.edu/ml/datasets/Forest+Fires
O objectivo foi construir uma base de dados a partir desses dados, que permitisse
efectuar uma representação espacial de pontos com dados associados às suas
coordenadas e explorar os mesmos.
Para tal, utilizou-se o Sistema de Gestão de Bases de Dados PostgreSQL com a
extensão PostGIS e utilizou-se a aplicação GvSIG como complemento para
visualização e obtenção de diversos resultados a partir dos dados.
2. 2
2. Trabalho Relacionado
Bases de Dados Espaciais
Uma base de dados espacial é para todos os efeitos, uma base de dados que
armazena conjuntos de objectos que representem aspectos geométricos de dados
reais. Estes objectos assumem as formas de pontos, linhas ou polígonos, sendo
que estes últimos podem ter diversas formas e conter buracos no seu interior. É
possível realizar vários tipos de análise destes objectos por meio de métodos de
selecção, intersecções, funções espaciais, entre outras. (Güting 1994-10-01)
A utilização de Sistemas de Gestão de Bases de Dados (SGBD) com
características espaciais como suporte aos GIS (Geographic Information Systems)
para obter os dados sobre os quais os utilizadores requerem diversas análises é a
base do actual estado desta área científico-tecnológica. Assim, existem várias
aplicações desta tecnologia para efectuar análises mais detalhadas de dados, tais
como os Censos e o Planeamento Territorial. A evolução da tecnologia tem vindo
adicionalmente a proporcionar características de Data Mining às Bases de Dados
Espaciais permitindo encontrar informação através da procura de padrões e
estatísticas. (Shekhar and Chawla 2003)
A tecnologia em si, possui actualmente uma base de implementação algo
alargada, estando presente de raiz ou através de Plug-ins para a maioria dos
SGBD como o Oracle, Microsoft SQL Server e PostgreSQL. Possui no entanto
algumas debilidades relativas à facilidade de utilização bem como de transposição
para ferramentas GIS como se constatou ao longo deste trabalho.
Fogos Florestais
Para compreensão de algumas das variáveis de dados contidas no pacote de dados
seleccionado apresenta-se a seguinte lista de definições relativas ao Fire Weather
Index System contidas no site http://bcwildfire.ca/weather/indices.htm:
o FFMC - Fine Fuel Moisture Code: indicador de materiais de fácil
combustão.
o DMC - Duff Moisture Code: indicador de consumo em termos de
combustão de materiais madeireiros.
o DC - Drought Code: indicador de secas sasonais, utilizando a
humidade nas camadas orgânicas como referência.
3. 3
o ISI - Initial Spread Index: indicador da taxa de propagação
esperada de um incêndio. Resulta da combinação dos efeitos do
vento e FFMC.
o BUI - Build Up Index: indicador da quantidade total de
combustível disponível, obtém-se combinando o DMC e o DC.
o FWI - Fire Weather Index: indicador da intensidade do fogo,
obtém-se através da combinação do ISI e do BUI. É o risco de
incêndio associado às áreas florestais e rurais.
Este Sistema pode servir de base para efectuar as análises necessárias ao conjunto
de dados relativos aos fogos, nomeadamente em variáveis que apesar de não
estarem presentes no conjunto de dados, são obtidas a partir de alguns dos dados
contidos. A lista de relações entre variáveis é a que se segue:
Surge no entanto outro problema devido ao facto de não se encontrar devidamente
divulgada a forma de cálculo das variáveis que resultam da combinação de outras
variáveis. No entanto, os intervalos relativos a cada um dos índices estão
disponíveis em http://www.n9mfk.com/wxfireweatherdefinitions.php como se
pode verificar na ilustração seguinte:
Ilustração 1 - Relações entre variáveis (P. Cortez and A. Morais. A Data
Mining Approach to Predict Forest Fires using Meteorological Data. In J.
Neves, M. F. Santos and J. Machado Eds.)
Ilustração 2 - Índices e intervalos associados
4. 4
Com base nesta tabela, é possível inferir que para os índices DMC e DC situados
nos mesmos intervalos o BUI será situado no mesmo intervalo. Isto é, se os
índices DMC e DC estiverem situados no intervalo baixo (Low), o BUI é baixo, se
ambos estiverem situados no intervalo extremo (Extreme), o BUI é extremo.
3. Trabalho Desenvolvido
Após a instalação do SGBD PostgreSQL e da extensão PostGIS, bem como da
obtenção do conjunto de dados seleccionado, procedeu-se à interpretação dos
tipos de variáveis nele contidas.
Variáveis de dados:
X – coordenada espacial do eixo das abcissas no parque de Montesinho: 1 a 9
Este dado apesar de inicialmente ser do tipo inteiro (integer) será eventualmente
transformado num dado do tipo float de modo a não haver pontos coincidentes na
representação gráfica.
Y – coordenada espacial do eixo das ordenadas no parque de Montesinho: 2 a 9
Este dado recebeu o mesmo tratamento que o anterior.
month – Estes dados correspondem a um mês do ano no intervalo (com meses
nomeados em inglês) de Janeiro a Dezembro e é um dado sobre a forma de
caracteres: "jan" to "dec“ (char)
day – Estes dados correspondem a um dia da semana no intervalo (com dias
nomeados em inglês) de Segunda-Feira a Domingo e recebeu o mesmo tratamento
que o anterior: "mon" to "sun" (char)
FFMC – indíce FFMC: 18.7 to 96.20 (float)
DMC - indíce DMC: 1.1 to 291.3 (float)
DC - indíce DC: 7.9 to 860.6 (float)
ISI - indíce ISI: 0.0 to 56.10 (float)
temp – Dados relativos à temperatura em graus Celsius: 2.2 to 33.30 (float)
RH – Dados relacionados com a Humidade relativa em %: 15.0 to 100 (float)
wind – Dados sobre a velocidade do vento em km/h: 0.40 to 9.40 (float)
rain – Dados sobre a precipitação em mm/m2: 0.0 to 6.4 (float)
area – Dados sobre a área ardida da floresta em hectares: 0.00 to 1090.84 (float)
5. 5
Importação dos Dados para o PostgreSQL
O passo seguinte foi importar os dados do ficheiro em que se encontravam
contidos para uma tabela no PostgreSQL. Para esse efeito, criou-se em primeiro
lugar uma tabela com colunas correspondentes aos dados e ao seu tipo, através da
seguinte query em SQL:
• create table importados (X int, Y int, month char(3), day char(3), FFMC
float, DMC float, DC float, ISI float, temp float, RH float, wind float, rain
float, area float);
Em seguida, através da função “COPY” contida na linguagem SQL, criou-se uma
query que importasse os dados do ficheiro para a tabela criada anteriormente
(importados):
• COPY importados from '/forestfiresnova.csv' DELIMITERS ',' CSV;
A função “DELIMITERS” permite seleccionar o separador de cada tipo de dados,
neste caso vírgulas. “CSV” refere-se ao tipo de ficheiro em que os dados que se
pretende importar se encontram contidos.
Criação de uma tabela com uma coluna do tipo geometry
O passo seguinte no trabalho consistiu em criar uma nova tabela com uma coluna
adicional cujo tipo de dados fosse geometry, bem como a atribuição de uma chave
primária gerada a partir de uma sequência de números para efeitos de
identificação de cada ponto e seus dados. As queries SQL utilizadas foram as que
se seguem:
CREATE SEQUENCE sq10;
CREATE TABLE t4(
id INTEGER PRIMARY KEY DEFAULT NEXTVAL('sq10'),
x integer,
y integer,
month char(3),
day char(3),
ffmc float,
dmc float,
dc float,
isi float,
temperature float,
6. 6
rh float,
wind float,
rain float,
area float
);
SELECT AddGeometryColumn(„t4','ponto','27492','POINT',2);
INSERT INTO t4
(x,y,month,day,ffmc,dmc,dc,isi,temperature,rh,wind,rain,area)
SELECT
x,y,month,day,ffmc,dmc,dc,isi,temp,rh,wind,rain,area
FROM
importados
Note-se que a primeira query do tipo “SELECT” é a única forma de adicionar a
coluna geométrica à tabela que permite ao GvSig detectar de os dados como
sendo do tipo geométrico. Isto deve-se ao facto do PostGIS colocar uma restrição
aos tipos de dados através desta query, facto que não se verifica ao adicionar de
forma manual a coluna. Devido a esta característica particular do PostGIS foram
sentidas dificuldades de execução devido ao desconhecimento da mesma, em
fases posteriores do trabalho, nomeadamente na transposição dos dados para o
GvSIG.
“t4” refere-se à tabela destino, “ponto” ao nome da nova coluna, “27492” ao tipo
de referencial geométrico utilizado pelos dados, “POINT” ao tipo de geometria e
“2” ao número de variáveis que compõe o tipo de geometria, neste caso dois
devido à existência de apenas duas coordenadas, x e y.
Random das coordenadas
De modo a existir uma maior dispersão dos pontos e estes não coincidirem,
somou-se um valor decimal a cada Coordenada, após converter o tipo de dados de
x e y para float. Optou-se por um valor decimal de modo a obter uma
representação o mais próximo possível da original. As queries que se seguem
foram utilizadas para obter este efeito de dispersão:
UPDATE t4
SET x = x + random()/10;
UPDATE t4
7. 7
SET y = y + random()/10;
Preenchimento da coluna ponto do tipo geometry
O passo seguinte envolveu a inserção dos valores relativos aos pontos na coluna
geométrica da tabela pretendida.
UPDATE t4
SET ponto = SetSRID(ST_MakePoint(x,y),27492);
Mais uma vez é utilizado o número referente ao tipo de referencial geométrico
para definir os dados espaciais. A utilização da função “ST_MakePoint” define a
forma geométrica como sendo do tipo ponto.
Ligação e transposição dos dados para o GvSIG
No GvSIG adicionou-se uma nova capa e em seguida seleccionou-se o separador
GeoDB, a fim de criar a ligação de dados entre o PostgreSQL e o GvSIG.
Ao criar uma nova ligação é necessário fornecer os seguintes dados: nome da
ligação, tipo de driver de ligação, url de servidor, número da porta do servidor,
nome da base de dados, nome do utilizador da base de dados e a password
associada, sendo que foram utilizados para ligar ao PostgreSQL os seguintes
dados: fogos, PostGIS JDBC Driver, localhost, 5432, fogos, postgres, password
para cada um dos dados correspondentes.
Após de criada e iniciada a ligação ao PostgreSQL é apresentada uma listagem de
todas as tabelas associadas à base de dados indicada na ligação. Ao seleccionar
uma tabela que inclua dados geométricos definidos como mostrado anteriormente,
o GvSig detecta de forma automática a coluna do tipo geométrico e possibilita a
indicação da coluna que actua como chave primária da tabela.
Após o estabelecimento desta ligação aos dados foi iniciado o trabalho de análise
dos dados com recurso às ferramentas incluídas no GvSIG.
4. Resultados
Após o preenchimento com sucesso de uma tabela com dados espaciais, procedeu-
se a efectuar análises tanto no PostgreSQL através de queries como em seguida no
GvSIG.
8. 8
Algumas primeiras análises de relevo efectuadas no PostgreSQL
Pontos com área ardida:
- Query: select ponto from t4 where area>0
- Resultado: 270 focos de incêndio
Tendo em conta os índices associados aos dados e intervalos
correspondentes efectuaram-se as análises que se seguem.
Pontos e meses do ano em que o BUI é de risco extremo:
- Query: select ponto, month from t4 where dmc>63 and dc>360
- Resultado: 375 vezes
Meses com excepção do Verão em que existe ISI com risco muito elevado e
precipitação razoável:
- Query: select month, rh from t4 where isi>11 and rh>25 and month !=
'aug' and month != 'jul' order by month
- Resultado: Abril, Março, Junho, Setembro, Outubro
Resultados no GvSIG
No GvSIG grande parte das ferramentas de análise e funcionalidades são
derivadas de queries SQL do tipo espacial, sendo exemplo disso a função Convex
Hull.
As ferramentas de análise estão disponíveis através do Gestor de Geoprocessos e
do menu SEXTANTE, um Plug-in já incluído no pacote de instalação do GvSIG.
Através da utilização destas e outras funcionalidades de menor relevo obteve-se os
resultantes que se apresentam de seguida.
Mapa de pontos obtido após a transposição dos dados:
Ilustração 3 - Mapa de Pontos
9. 9
Distâncias dos pontos ao ponto com mais convergência de focos de incêndio:
Convex Hull – Polígono Envolvente
Cálculo do perímetro e da área abrangida pelos focos de incêndio (25,71 metros
de perímetro e 36,24 metros quadrados de área – nota: a escala não foi
devidamente corrigida):
Estatísticas da variável temperatura:
10. 10
Correlação entre DC e DMC (BUI):
Correlação entre FFMC e a velocidade do vento (ISI):
Histograma do índice ISI:
11. 11
Correlação entre Área Ardida e Temperatura:
Centro mediano da área ardida:
Adicionalmente, constatou-se que é possível obter informação sobre pontos ou um
agregado destes pontos, clicando sobre os mesmos com a ferramenta de
informação:
12. 12
5. Conclusões
As Bases de Dados Espaciais são úteis para diversas áreas científicas que
necessitem de informação representada de forma gráfica e que agregue dados em
diferentes tipos de objectos.
Permitem efectuar um elevado número de consultas através de ferramentas como
o GvSig para discernir informação adicional de possível relevo proporcionando
simultaneamente a possibilidade de trabalhar com maior consciência da área
geográfica onde os dados possuem relevância.
Verifica-se adicionalmente que ferramentas como o GvSig que permitem trabalhar
com Bases de Dados Espaciais estão numa fase muito prematura de utilização e
possuem diversos problemas técnicos derivados dessa falta de desenvolvimento,
podendo criar situações de algum incómodo para os utilizadores devido a
pequenas falhas.
Referências Bibliográficas
http://archive.ics.uci.edu/ml/datasets/Forest+Fires
Güting, R. H. (1994-10-01) An introduction to spatial database systems. The VLDB Journal, 3.
Shekhar, S. & S. Chawla. 2003. Spatial Databases: A Tour. Prentice Hall.
P. Cortez and A. Morais. A Data Mining Approach to Predict Forest Fires using Meteorological
Data. In J. Neves, M. F. Santos and J. Machado Eds., New Trends in Artificial Intelligence,
Proceedings of the 13th EPIA 2007 - Portuguese Conference on Artificial Intelligence, December,
Guimaraes, Portugal, pp. 512-523, 2007. APPIA, ISBN-13 978-989-95618-0-9.
http://www.dsi.uminho.pt/~pcortez/fires.pdf
http://bcwildfire.ca/weather/indices.htm