BDG-11 Objetos moveis

Propaganda
Objetos Móveis
Clodoveu Davis
Objetos Móveis em SIET
•  Referências fundamentais
–  Güting, R. H., Böhlen, M. H., Erwig, M., Jensen, C. S., Lorentzos, N.,
Nardelli, E., Schneider, M., Viqueira, J. R. R. Spatio-temporal Models
and Languages: an approach based on data types. In Sellis, T. et al.
Spatio-temporal Databases. Lecture Notes in Computer Science 2520,
117-176, 2003.
–  Güting, R.H., M.H. Böhlen, M. Erwig, C.S. Jensen, N.A. Lorentzos, M.
Schneider, and M. Vazirgiannis, A Foundation for Representing and
Querying Moving Objects in Databases. ACM Transactions on
Database Systems 25 (2000), 1-42.
–  Hornsby, K. and Egenhofer, M. J. Modeling Moving Objects over
Multiple Granularities. Annals of Mathematics and Artificial
Intelligence 36:177-194, 2002.
Introdução
•  BD espaciais lidam com geometrias
associadas a objetos
•  BD temporais buscam registrar estados
passados dos objetos
–  Passado em termos de tempo de validade
(passado do mundo real)
–  Passado em termos de tempo de transação
(passado do próprio banco de dados)
Introdução
•  BD espaço-temporais precisam incluir
esses tópicos, bem como geometrias que
mudam ao longo do tempo
•  Certos autores pensam que isso significa
que BD espaço-temporais são
essencialmente BDs de objetos móveis
–  A mudança de uma geometria no tempo pode
ser devida a deslocamento sem alteração de
forma ou deformação sem mudança
posicional
Introdução
•  Foco usual:
–  Pontos móveis
–  Regiões móveis
•  Linhas são deixadas de fora por serem “abstrações ou
projeções de movimentos” no contexto de BDET, casos
particulares das regiões
•  Interesse na definição de tipos de dados e linguagens
de consulta
•  Enfoque espaço-temporal: 2D + tempo (SNAP)
•  Preocupação com a granularidade ET
•  Preocupação com a possibilidade de implementação em
sistemas reais
Enfoque em Tipos de Dados
(Güting)
•  O movimento pode se dar em passos
discretos ou continuamente
–  Passos discretos podem ser considerados um
caso especial
•  As mudanças no BD são feitas em passos
discretos (transações)
–  A modelagem deve considerar o tempo de
validade
–  Se o tempo de transação for importante, o BD
precisa ser bitemporal
Enfoque em Lifelines
•  Geospatial Lifelines são modelos do
movimento de um objeto
–  Apenas pontos
•  Elemento de observação de uma lifeline:
–  Tripla <Id, Location, Time>
–  Portanto, visão SNAP
•  Múltiplos níveis de granularidade
–  Granularidade espacial
–  Granularidade temporal
Enfoque em Tipos de Dados
•  Objetivos básicos das consultas
–  Relatar o passado dos objetos
–  Prever ou estimar o futuro
–  Determinar o posicionamento instantâneo
(posição agora) de algo que se move
continuamente
Enfoque em Tipos de Dados
•  Modelagem: tipos básicos
–  mpoint: ponto móvel
–  mregion: região móvel
–  São mapeamentos de tempo para posição/
forma
•  mpoint = time à point
•  mregion = time à region
•  Genericamente: τ(α) = time à α
Mpoint
Operações
•  Exemplos:
•  Obs: mdistance é uma série temporal de valores
de distância (“real móvel”)
Consultas
•  Espacial
•  Temporal
•  Espaço-temporal (join ET)
Consultas
Problemas
•  Seria realista executar essas consultas?
•  Como seriam armazenados os dados espaçotemporais?
•  A variação contínua funciona bem na
modelagem conceitual, mas a implementação
requer a discretização e funções de interpolação
•  Visão abstrata versus discreta
–  Abstrata: SPAN; Discreta: SNAP
–  Abstrata: conceitual; Discreta: implementação
Abordagem
•  Criar tipos e operações adequados para a
realização de consultas
•  Definir a semântica dos tipos
–  Usando uma álgebra associada
•  Determinar maneiras de lidar com as
aproximações (e as dificuldades)
resultantes da discretização
Discretização
Discretização
•  Problemas ligados à discretização
–  Propriedades simples de objetos ou pares de objetos
podem ser expressas como funções do tempo
(distância, relações topológicas, etc.)?
–  O registro de posições ao longo de uma trajetória
(observações) é suficiente? É necessário registrar
velocidade e aceleração?
–  A mudança de forma pode ser expressa com
transformações afins (rotação, translação, mudança
de escala), ou precisa ser arbitrária? Como interpolar
a forma entre duas observações?
Álgebra (abstrata) para
Objetos Móveis
•  Inclui
–  Definição de tipos básicos (numéricos, string,
booleano), espaciais (ponto, linha, polígono, conjunto
de pontos) e temporais (instante)
–  Definição de tipos compostos (básico/espacial,
básico/temporal, espaço-temporal)
–  Definição de operações (não-temporais, de
conjuntos, agregação, distância e direção, temporais)
•  Operações sobre dados não-temporais são estendidas para
refletir dados temporais (mpoint e mregion)
•  Operadores “derivada” (taxa de mudança ao longo do
tempo), “velocidade” (derivada aplicada a mpoint),
“mudança de direção” (aplicada a mpoint), e “aceleração”
Estruturas de Dados para
Objetos Móveis
•  A partir da álgebra, foram definidas
estruturas de dados contendo tipos
discretos que aproximam os conceitos
abstratos
•  Tipos básicos:
Estruturas de Dados para
Objetos Móveis
•  A representação de movimento é feita
usando slices, fragmentos da evolução
temporal
•  Dentro de cada slice, o movimento deve
poder ser aproximado por alguma função
simples (ex.: constante; linear)
Estruturas de Dados para
Objetos Móveis
•  Nos tipos básicos, o Unit é
correspondente a um slice.
•  Existem tipos (upoint, ureal, uline, uregion)
que correspondem ao valor instantâneo
que define um slice
•  Os tipos geométricos e temporais são
discretizados
Estruturas de Dados para
Objetos Móveis
Estruturas de Dados para
Objetos Móveis
•  As definições formais podem ser
encontradas em (Guting et al 2003)
•  São apresentados também predicados
espaço-temporais
–  Ex.: predicado espacial INSIDE gera
•  always_inside
•  sometimes_inside
•  São incluídas definições especiais para
subdivisões planares temporais
Estruturas de Dados para
Objetos Móveis
•  Há também uma definição formal desses predicados e
de seqüências de predicados ao longo do tempo
–  Ex.: inside -> meet -> disjoint é possível
–  Ex.: inside -> disjoint não é possível
–  Ponto Cross Region (no sentido de movimento)
= disjoint > meet > inside > meet > disjoint
–  Region Cross Region (movimento)
= disjoint > meet > overlap > covered by > inside > coveredby >
overlap > meet > disjoint
Consultas
•  Existem propostas para inclusão dos
predicados espaço-temporais e das
seqüências de predicados nas linguagens
de consulta
•  Ex:
Enfoque em Lifelines
•  Geospatial Lifelines são modelos do
movimento de um objeto
–  Apenas pontos
•  Elemento de observação de uma lifeline:
–  Tripla <Id, Location, Time>
–  Considera-se apenas séries de amostras
discretas, ordenadas pelo instante de
observação
–  Portanto, visão SNAP
Enfoque em Lifelines
•  Conceitos básicos
–  Lifeline thread
–  Velocidade
–  “Beads and necklaces”
•  Enfoque essencialmente geométrico e
aproximativo
Enfoque em Lifelines
Enfoque em Lifelines
Enfoque em Lifelines
Enfoque em Lifelines
•  A definição geométrica das beads (contas)
permite que se resolva consultas
geometricamente
–  Ex.: é possível que o objeto A tenha estado em (x,y)?
Por quanto tempo?
•  (1) Interseção entre o bead de A e uma linha vertical em (x,y)
•  (2) Comprimento da linha
–  Ex: é possível que o objeto A e o objeto B tenham se
encontrado?
•  Interseção dos beads de A e B
–  Ex.: que locais o objeto A pode ter visitado no tempo
t?
•  Interseção entre o bead de A e um plano z = t
Enfoque em Lifelines
Enfoque em Lifelines
•  Naturalmente, o enfoque é aproximativo
–  A velocidade é considerada constante
–  Não se consideram obstáculos ao movimento
em uma determinada direção
–  O movimento é discretizado, e as operações
supõem que se conheça a posição do objeto
em determinados instantes (os vértices de
cada bead)
Granularidade de Lifelines
•  Múltiplos níveis de granularidade
–  Granularidade espacial
•  Melhor resolução da forma geométrica
–  Granularidade temporal
•  Mais amostras da posição ao longo do tempo
•  Melhor aproximação da velocidade
Acréscimo de Pontos
Seqüência de Pontos: Necklaces
Refinamento de Amostras
Refinamento da Velocidade
Beads degeneradas
Generalização de Necklaces
Generalização de Necklaces
Generalização por Convex Hull 3D
Desempenho
•  O cálculo geométrico da interseção de beads é
complexo e pode ser um problema para o
desempenho
•  São realizadas aproximações de beads usando
caixas (minimum bounding boxes)
tridimensionais, poliédricas ou cilíndricas
(cilindros com base circular ou elíptica)
Aplicação a Regiões?
Mineração de Trajetórias
Padrões de mobilidade
Padrões de mobilidade
Padrões de mobilidade
Principais Direções de Pesquisa
• 
• 
• 
• 
• 
• 
• 
• 
Linguagem de consulta
Descrição mais refinada/correta/completa do movimento
Granularidade variável também espacialmente
Movimento restrito a “canais” (ex. ruas, trilhos, linhas
aéreas, etc.)
Representação de incerteza
Coordenação com a área de raciocínio espacial
qualitativo
Mineração de trajetórias
Anonimização
Download