• Nenhum resultado encontrado

Antonio Jose de Castro Filho. Dissertação apresentada ao Programa de

N/A
N/A
Protected

Academic year: 2022

Share "Antonio Jose de Castro Filho. Dissertação apresentada ao Programa de"

Copied!
79
0
0

Texto

(1)

Antonio Jose de Castro Filho

Dissertac¸ ˜ao apresentada ao Programa de P ´os-Graduac¸ ˜ao em Ci ˆencia da Computac¸ ˜ao, do Centro Federal de Educac¸ ˜ao Tecnol ´ogica Celso Suckow da Fonseca, CEFET/RJ, como parte dos requisitos necess ´arios `a obtenc¸ ˜ao do t´ıtulo de mestre.

Orientador(a): Rafaelli Coutinho Coorientador(a): Eduardo Ogasawara

Rio de Janeiro, Fevereiro 2021

(2)

Dissertac¸ ˜ao apresentada ao Programa de P ´os-Graduac¸ ˜ao em Ci ˆencia da Computac¸ ˜ao, do Centro Federal de Educac¸ ˜ao Tecnol ´ogica Celso Suckow da Fonseca, CEFET/RJ, como parte dos requisitos necess ´arios `a obtenc¸ ˜ao do t´ıtulo de mestre.

Antonio Jose de Castro Filho

Banca Examinadora:

Presidente, Professora D.Sc. Rafaelli Coutinho (CEFET/RJ) (Orientador(a))

Professor D.Sc. Eduardo Ogasawara (CEFET/RJ) (Coorientador(a))

Professor D.Sc. Jorge de Abreu Soares (CEFET/RJ)

Professora D.Sc. Esther Pacitti (INRIA)

Rio de Janeiro, Fevereiro 2021

(3)

Elaborada pela bibliotecária Tania Mello – CRB/7 nº 5507/04 Mineração de sequências restritas no espaço e no tempo / Antonio Jose de Castro Filho — 2021.

78f : il. , enc.

Dissertação (Mestrado) Centro Federal de Educação Tecnológica Celso Suckow da Fonseca , 2021.

Bibliografia : f. 73-78 Orientador: Rafaelli Coutinho Coorientador: Eduardo Ogasawara

1. Análise de séries temporais. 2. Mineração de dados (Computação). 3. Algoritmos. I. Coutinho, Rafaelli (Orient.). II.

Ogasawara, Eduardo (Coorient.). III. Título.

CDD 519.55

(4)

Minerac¸ ˜ao de Sequ ˆencias Restritas no Espac¸o e no Tempo

Os padr ˜oes espac¸o-temporais trazem conhecimento sobre o tempo e a posic¸ ˜ao onde eles est ˜ao presentes. Encontr ´a-los ´e uma tarefa importante para diferentes dom´ınios.

No entanto, nem todos os padr ˜oes s ˜ao frequentes por todo um conjunto de dados, eles podem ocorrer restritos no espac¸o e no tempo. A minerac¸ ˜ao desses padr ˜oes tem como ob- jetivo descobrir a faixa de tempo e o conjunto de posic¸ ˜oes espaciais em que as sequ ˆencias de eventos s ˜ao frequentes. Este trabalho prop ˜oe o algoritmoGeneralized Spatial-Time Sequence Miner (G-STSM) como uma soluc¸ ˜ao para a descoberta de sequ ˆencias fre- quentes que s ˜ao restritas no espac¸o e no tempo, trazendo a formalizac¸ ˜ao do problema, definic¸ ˜oes, provas e algoritmos. At ´e onde se sabe, ap ´os busca na literatura relacionada, o G-STSM ´e a primeira abordagem capaz de encontrar tais sequ ˆencias trabalhando com uma dimens ˜ao de tempo e tr ˆes dimens ˜oes de espac¸o. O G-STSM foi comparado com uma abordagem intuitiva que busca sequ ˆencias de eventos frequentes com suporte muito baixo e agrupa suas ocorr ˆencias para encontrar padr ˜oes restritos no espac¸o e no tempo usando algoritmos conhecidos. Foi escolhido um conjunto de dados s´ısmicos espac¸o-temporal do mundo real para comparar ambas as abordagens usando m ´etricas de classificac¸ ˜ao e registro de uso de recursos. Como resultado, o G-STSM apresentou melhor desempenho computacional com qualidade semelhante mostrando-se uma ferramenta de minerac¸ ˜ao de dados eficiente para encontrar sequ ˆencias restritas no espac¸o e no tempo.

Palavras-chave: S ´eries Espac¸o-Temporais; Padr ˜oes Sequenciais; Minerac¸ ˜ao de Sequ ˆencias;

Minerac¸ ˜ao de Dados

(5)

Mining of Space and Time Constrained Sequences

Spatio-temporal patterns bring knowledge about time and position where they are present. Finding them is an important task for different domains. However, not all patterns are frequent over an entire dataset, they can occur constrained in space and time. Mining these patterns have as objective to discover the time range, and the set of spatial positions in which event sequences are frequent. This work proposesGeneralized Spatial-Time Sequence Miner (G-STSM) algorithm as a solution for the discovery of frequent sequences that are constrained in space and time, bringing the formalization of the problem, definitions, proofs and algorithms As far as is known, after searching the related literature, G-STSM is the first approach able to find such sequences working with one dimension of time and three dimensions of space. G-STSM has been compared with an intuitive approach that searches for sequences of frequent events with very low support and groups its occurrences to find patterns constrained in space and time using known algorithms. A set of real world space-time seismic dataset was chosen to compare both approaches using classification metrics and resource usage records. As a result, G-STSM presented better computational performance with similar quality and it proved to be an efficient data mining tool for finding tight space-time sequences.

Keywords: Space-Temporal Series; Sequential Patterns; Sequence Mining; Data Mi- ning

(6)

Figura 1 – Exemplo de sequ ˆencia com marcac¸ ˜oes de tempo usada na medi- cina: eletrocardiograma. Fonte: ENEM 2016. 16 Figura 2 – Exemplo de sequ ˆencia com marcac¸ ˜oes de tempo usada na eco-

nomia: taxa de c ˆambio US$ X R$. Fonte: tradingeconomics.com. 17 Figura 3 – Diagrama UML referente as estruturas de dados utilizadas. Um

candidato cpossui um conjunto de Ranged Groupsc.rgs. Ran- ged Group generaliza Kernel Range-Group, que por sua vez

generaliza Solid Range-Group. 36

Figura 4 – Distribuic¸ ˜ao das posic¸ ˜oes utilizadas no exemplo. 51 Figura 5 – Processo de minerac¸ ˜ao utilizado pelo G-STSM. Ret ˆangulos com

cantos arredondados e fundo cinza representam dados. Ret ˆangulos com fundo branco se referem a processamento. 53 Figura 6 – Obtenc¸ ˜ao de dados s´ısmicos marinhos. Ondas de som s ˜ao

enviadas ao fundo do mar, a partir de canh ˜oes de ar, refletidas e registradas por hidrofones. Fonte: gov.br/anp. 60 Figura 7 – Conjunto de dados T401, marcac¸ ˜ao dos padr ˜oes (linhas colori-

das), e divis ˜ao em quadrantes (linhas retas verticais e horizontais em preto com numerac¸ ˜ao em vermelho). Fonte: OpendTect [2020]. 61 Figura 8 – Tempo total de execuc¸ ˜ao para cada abordagem usando diferentes

n ´umeros de quadrantes. 65

Figura 9 – acuracia´ dados β, σ e tamanho da sequ ˆencia para ambas as abordagens. ´Areas em cinza representam aus ˆencia de valor, ou seja, para os par ˆametros de entrada n ˜ao foram encontradas

sequ ˆencias frequentes. 66

Figura 10 – Correlac¸ ˜ao entre os par ˆametros de entrada (γ,β eσ), o uso de

recursos, e os resultados. 68

(7)

nho da sequ ˆencia para o G-STSM. 68 Figura 12 – Tempo de execuc¸ ˜ao do G-STSM usando diferentes configurac¸ ˜oes

e tamanhos de conjunto de dados. 70

Figura 13 – Uso m ´aximo de mem ´oria durante a execuc¸ ˜ao do G-STSM para diferentes tipos de configurac¸ ˜oes e tamanhos de conjunto de

dados. 70

(8)

Tabela 1 – Classificac¸ ˜ao dos trabalhos relacionados apresentando informac¸ ˜oes do m ´etodo utilizado e das restric¸ ˜oes aplicadas. 30 Tabela 2 – Conjunto de Dados STS. Nove TS, cada uma com tr ˆes observac¸ ˜oes. 50 Tabela 3 – Estrutura de dados referente aos candidatos. 51 Tabela 4 – Resultado da execuc¸ ˜ao do passo 1.a - Criac¸ ˜ao dos grupos de

posic¸ ˜oes para a primeira marcac¸ ˜ao de tempo. 52 Tabela 5 – Resultado da execuc¸ ˜ao do processo at ´e o passo1.b- Gerac¸ ˜ao

dos RGs referentes aos grupos de posic¸ ˜oes gerados. 54 Tabela 6 – Resultado da execuc¸ ˜ao do passo 1.a - Criac¸ ˜ao dos grupos de

posic¸ ˜oes, para a segunda marcac¸ ˜ao de tempo. 54 Tabela 7 – Resultado da execuc¸ ˜ao do passo1.b - Novos RGs criados a partir

dos grupos de posic¸ ˜oes referentes `a segunda marcac¸ ˜ao de tempo

para todas as sequ ˆencias candidatas. 55

Tabela 8 – Resultado da execuc¸ ˜ao do processo at ´e o passo1.c - Uni ˜ao dos RGs abertos referentes `a segunda marcac¸ ˜ao de tempo. 55 Tabela 9 – Resultado da execuc¸ ˜ao do processo at ´e o passo1.d - Validac¸ ˜ao

dos RGs referentes `a segunda marcac¸ ˜ao de tempo. 56 Tabela 10 – Resultado da execuc¸ ˜ao do passo 1.a - Criac¸ ˜ao dos grupos de

posic¸ ˜oes para a terceira marcac¸ ˜ao de tempo. 56 Tabela 11 – Resultado do passo1.b - Gerac¸ ˜ao dos RGs referentes aos grupos

de posic¸ ˜oes da terceira marcac¸ ˜ao de tempo. 56 Tabela 12 – Resultado da conclus ˜ao do passo1.creferente `a terceira marcac¸ ˜ao

de tempo. 57

Tabela 13 – Resuldado da execuc¸ ˜ao do passo1- Todos os KRGs ao fim da busca utilizando sequ ˆencias de tamanho um. 57 Tabela 14 – Resultado do passo2 - SRGs gerados a partir dos KRGs. 58

(9)

dois gerados a partir dos SRGs de sequ ˆencias de tamanho um. 58

Tabela 16 – Variac¸ ˜ao de quadrantes. 63

Tabela 17 – Par ˆametros usados nos experimentos. 64

Tabela 18 – M ´edia e desvio padr ˜ao das m ´etricas qualitativas para ambas abor-

dagens. 67

Tabela 19 – Configurac¸ ˜ao utilizada no cen ´ario C. 69

(10)

Algoritmo 1 – G-STSM 38

Algoritmo 2 – FindKernelRangeGroup 39

Algoritmo 3 – SplitGroups 40

Algoritmo 4 – CreateGroup 41

Algoritmo 5 – MergeOpenKernelRangeGroups 42

Algoritmo 6 – ValidateKernelRangeGroups 43

Algoritmo 7 – ValidateAndClose 44

Algoritmo 8 – MergeKernelRangeGroups 47

Algoritmo 9 – GenerateCandidates 49

(11)

CRAN The Comprehensive R Archive Network G-STSMGeneralized Spatial-Time Sequence Miner KRG Kernel Range-Group

RG Ranged Group SRG Solid Range-Group

STS Sequ ˆencia Com Marcac¸ ˜ao De Tempo E Espac¸o (do Ingl ˆesSpatial Time-stamped Sequence)

TS Sequ ˆencia Com Marcac¸ ˜ao De Tempo (do Ingl ˆesTime-stamped Sequence)

(12)

1 Introduc¸ ˜ao 13

2 Referencial Te ´orico 16

2.1 Fundamentos 16

2.2 Minerac¸ ˜ao de Sequ ˆencias 19

3 Trabalhos Relacionados 21

3.1 Bases de Dados de Trajet ´oria 22

3.2 Bases de Dados de Posic¸ ˜oes Fixas 24

3.3 Comparac¸ ˜ao 28

4 Metodologia 32

4.1 Formalizac¸ ˜ao do Problema 32

4.2 Algoritmo G-STSM 35

4.2.1 Princ´ıpio Geral 37

4.2.2 Selec¸ ˜ao dos Kernel Range-Groups 39

4.2.3 Uni ˜ao dos Kernel Range-Groups 46

4.2.4 Gerac¸ ˜ao dos Candidatos 48

4.3 Exemplo 49

5 Avaliac¸ ˜ao Experimental 59

5.1 Conjunto de Dados 59

5.2 M ´etricas 61

5.3 Configurac¸ ˜ao Experimental 63

5.4 An ´alise Comparativa 65

5.5 An ´alise de Sensibilidade 67

6 Conclus ˜oes 71

(13)
(14)

1- Introduc¸ ˜ao

A popularizac¸ ˜ao de dispositivos digitais com sensores e GPS contribui para o surgimento de extensos conjuntos de dados acerca de diversas ´areas de conhecimento com eventos relevantes que acontecem em um determinado momento no tempo e posic¸ ˜ao no espac¸o. Contudo, com o crescimento desses conjuntos de dados, torna- se dif´ıcil ou mesmo imposs´ıvel analis ´a-los de forma n ˜ao automatizada. Ainda assim a capacidade de analisar esses dados abre oportunidades para extrair padr ˜oes espac¸o- temporais interessantes [Huang et al., 2008]. Ser capaz de obter conhecimento de padr ˜oes existentes nesses conjuntos de dados ´e um diferencial importante. Dada a ocorr ˆencia de um eventoApoder prever ou quantificar a probabilidade de um eventoB, ´e uma informac¸ ˜ao de grande utilidade para tomada de decis ˜oes.

O uso de minerac¸ ˜ao de dados, dentro de um processo multidisciplinar como forma de descoberta de estruturas de interesse em grandes conjuntos de dados, possibilita tal an ´alise [Hand, 2007; Fayyad et al., 1996; Alatrista-Salas et al., 2015]. Portanto, os algoritmos de minerac¸ ˜ao de dados t ˆem sido aplicados para descoberta de padr ˜oes em uma grande diversidade de problemas. Estes algoritmos comec¸aram com a busca de regras de associac¸ ˜ao e evolu´ıram para minerac¸ ˜ao de padr ˜oes sequenciais [Agrawal et al., 1993; Agrawal and Srikant, 1995]. Dessa forma a minerac¸ ˜ao de sequ ˆencias restritas no espac¸o e no tempo tem se tornado importante para diversos dom´ınios [Alatrista-Salas et al., 2016; Li and Fu, 2014; Huang et al., 2008; Geng and Hamilton, 2006].

No entanto, nem sempre a frequ ˆencia de ocorr ˆencia de alguns padr ˜oes ´e grande por todo o conjunto de dados. Surge, ent ˜ao, a ideia de extrair eventos que sejam frequentes n ˜ao por todo um conjunto de dados, mas por uma janela de tempo e de espac¸o.

Considere, por exemplo, que em dias normais de trabalho as ruas do Centro, assim como v ´arias outras na cidade do Rio de Janeiro apresentam congestionamento antes e depois do expediente. N ˜ao ´e diferente para as ruas ao redor do est ´adio do Maracan ˜a, onde um grande fluxo de ve´ıculos tamb ´em causa congestionamento. De manh ˜a, o fluxo intenso ´e no sentido centro da cidade e no final do dia, o sentido ´e o inverso. Um padr ˜ao que poderia ser facilmente encontrado para uma ferramenta de minerac¸ ˜ao de dados

(15)

devido ao alto suporte ´e que nas ruas do Rio de Janeiro, de manh ˜a (no sentido centro da cidade) e ao final do dia (no sentido oposto), antes e depois do expediente, o grande fluxo de ve´ıculos causa congestionamento.

Por ´em, `as quartas-feiras `a noite, quando acontecem partidas de futebol no est ´adio do Maracan ˜a, por volta das 22h com o t ´ermino da partida, carros de transporte de passageiros comec¸am a se aproximar para atender os torcedores que v ˜ao deixar o est ´adio, resultando em novos engarrafamentos nas ruas ao redor do est ´adio (em ambos os sentidos, indo e vindo do centro da cidade), n ˜ao s ´o pelo grande n ´umero de carros, mas tamb ´em porque se movem lentamente `a espera dos clientes. Esse tipo de padr ˜ao dificilmente seria encontrado usando m ´etodos tradicionais devido ao seu suporte muito baixo. O objetivo deste trabalho ´e justamente encontrar essas sequ ˆencias de eventos (a proximidade do final da partida de futebol gera congestionamento), o conjunto de posic¸ ˜oes (ruas pr ´oximas ao est ´adio do Maracan ˜a) e o intervalo de tempo (final da partida de futebol) onde esse padr ˜ao ´e frequente. Saber da exist ˆencia desse padr ˜ao ´e de grande import ˆancia para o planejamento e gest ˜ao da cidade.

Uma soluc¸ ˜ao intuitiva para encontrar padr ˜oes que s ˜ao restritos no espac¸o e no tempo ´e buscar sequ ˆencias de eventos frequentes com suporte muito baixo, encontrar suas ocorr ˆencias e agrupar essas ocorr ˆencias para cada sequ ˆencia frequente, obtendo grupos restritos no espac¸o e no tempo onde essas sequ ˆencias t ˆem suporte alto. Esta soluc¸ ˜ao ´e inspirada em Alatrista-Salas et al. [2015] e uma poss´ıvel implementac¸ ˜ao dela

´e combinar algoritmos bem conhecidos para minerac¸ ˜ao de sequ ˆencia e agrupamento.

Contudo, tal soluc¸ ˜ao pode gerar muitos itens frequentes devido ao suporte muito baixo usado para encontrar as sequ ˆencias, impactando no seu desempenho. Neste trabalho, esta abordagem foi utilizada para fins de comparac¸ ˜ao com o algoritmo desenvolvido e foi nomeada de SPADE+DBSCAN, pois utiliza os algoritmos SPADE (Sequencial PAttern Discovery using Equivalence classes) [Zaki, 2001] e DBSCAN (Density Based Clustering of Applications with Noise) [Ester et al., 1996].

Campisano et al. [2018] propuseram uma soluc¸ ˜ao para a descoberta de sequ ˆencias restritas em uma dimens ˜ao do espac¸o e no tempo. O presente trabalho generaliza este problema considerando o espac¸o de forma tridimensional e apresenta uma soluc¸ ˜ao efici- ente com o algoritmoGeneralized Spatial-Time Sequence Miner (G-STSM). Desta forma, buscam-se n ˜ao s ´o as sequ ˆencias que s ˜ao padr ˜oes, mas tamb ´em o per´ıodo de tempo e uma regi ˜ao do espac¸o (tridimensional) onde tais sequ ˆencias s ˜ao frequentes. Portanto,

(16)

as principais contribuic¸ ˜oes deste trabalho podem ser resumidas em: i) a formalizac¸ ˜ao da generalizac¸ ˜ao do problema para descoberta de sequ ˆencias restritas no espac¸o e no tempo, eii)a soluc¸ ˜ao do problema atrav ´es da proposta do algoritmo G-STSM.

O algoritmo G-STSM foi comparado com a abordagem SPADE+DBSCAN. Todos os experimentos realizados usam um conjunto de dados s´ısmico espac¸o-temporal real.

A qualidade das abordagens foi avaliada usando m ´etricas de classificac¸ ˜ao, al ´em disso o desempenho computacional de ambas as abordagens foi comparado. Os resultados obtidos indicam que o G-STSM teve um desempenho melhor do que o SPADE+DBSCAN, com m ´etricas de classificac¸ ˜ao semelhantes.

Acredita-se que o G-STSM seja uma ferramenta importante para encontrar sequ ˆencias restritas no espac¸o e no tempo. Desta forma, foi conduzida uma an ´alise extensa para avaliar sua sensibilidade com o objetivo de entender a influ ˆencia dos par ˆametros de entrada e diferentes tamanhos de conjuntos de dados na sa´ıda e no desempenho do algoritmo proposto.

O restante deste trabalho ´e organizado como segue: O Cap´ıtulo 2 descreve os principais conceitos para a compreens ˜ao deste trabalho. O Cap´ıtulo 3 apresenta levantamento e revis ˜ao de artigos relacionados ao tema. O Cap´ıtulo 4 traz detalhes sobre a abordagem utilizada neste trabalho apresentando o algoritmo G-STSM. O Cap´ıtulo 5 mostra os resultados da aplicac¸ ˜ao do G-STSM e sua comparac¸ ˜ao com a abordagem SPADE+DBSCAN. Por fim, o Cap´ıtulo 6 discute os resultados obtidos e aponta trabalhos futuros.

(17)

2- Referencial Te ´ orico

Este cap´ıtulo tem como objetivo apresentar conceitos importantes para com- preens ˜ao dos assuntos contidos neste trabalho. A Sec¸ ˜ao 2.1 introduz fundamentos necess ´arios sobre sequ ˆencias com marcac¸ ˜ao de tempo e espac¸o e a Sec¸ ˜ao 2.2 descreve o processo de minerac¸ ˜ao de sequ ˆencias.

2.1- Fundamentos

Uma sequ ˆencia com marcac¸ ˜ao de tempo ´e uma sequ ˆencia ordenada de observac¸ ˜oes obtidas por meio de medic¸ ˜oes repetidas ao longo do tempo [Han et al., 2011]. O estudo de sequ ˆencias com marcac¸ ˜ao de tempo ´e comum em diversas ´areas e aplicac¸ ˜oes, como por exemplo:i)na medicina, para avaliac¸ ˜ao da atividade el ´etrica do corac¸ ˜ao, atrav ´es de um eletrocardiograma, conforme ilustrado na Figura 1; eii)na economia, para avaliar as relac¸ ˜oes comerciais e financeiras entre dois pa´ıses, a taxa de c ˆambio, conforme ilustrado na Figura 2 [Mooney and Roddick, 2013; Han et al., 2007; Chen and Hu, 2006;

Klemettinen et al., 1994].

Figura 1 – Exemplo de sequ ˆencia com marcac¸ ˜oes de tempo usada na medicina: eletro- cardiograma. Fonte: ENEM 2016.

(18)

Figura 2 – Exemplo de sequ ˆencia com marcac¸ ˜oes de tempo usada na economia: taxa de c ˆambio US$ X R$. Fonte: tradingeconomics.com.

Sejat=<v1, v2, . . . , vn> umaSequ ˆencia com Marcac¸ ˜ao de Tempo (do ingl ˆes Time-stamped Sequence) (TS), ondevi ´e um item, |t|=n ´e o n ´umero de itens em t, evn ´e o item mais recente em t[Shumway and Stoffer, 2017]. Uma subsequ ˆencia ´e uma amostra cont´ınua de uma TS com um comprimento definido. Dessa forma, uma subsequ ˆencia de uma TStque comec¸a na marcac¸ ˜ao de tempope de tamanhom ´e uma sequ ˆencia ordenada de itens representada por:subm,p(t) =<vp, vp+1, . . . , vp+m−1>, onde

|subm,p(t)|=me1≤p≤ |t| −m.

Uma sequ ˆencia s =<w1, w2, . . . , wk> est ´a inclu´ıda a partir da marcac¸ ˜ao de tempo inicial q em uma TS t =<v1, v2, . . . , vn>, se existir uma posic¸ ˜ao inicial q tal que w1 = vq, w2 = vq+1, . . . , wk = vq+k−1. Assim, uma sequ ˆencia s ´e definida por:

s=<w1, w2, . . . , wk>,∃q|s=subk,q(t), onde|s|=k.

Diversos tipos de eventos envolvem n ˜ao s ´o dados temporais, como tamb ´em dados espaciais, como por exemplo i) na sismologia, para levantamentos s´ısmicos e ii)na epidemiologia, para registro do n ´umero de infectados por uma dada doenc¸a em diferentes regi ˜oes ao longo do tempo [Alatrista-Salas et al., 2015]. Uma base de dados espac¸o-temporal ´e um conjunto estruturado de informac¸ ˜oes, em que dimens ˜oes espaciais e temporais est ˜ao inclusas [Alatrista-Salas et al., 2016]. Dados espac¸o-temporais podem ser indexados por localizac¸ ˜oes espaciais e marcac¸ ˜oes de tempo. O espac¸o pode ser geogr ´afico ou socioecon ˆomico, e as escalas de tempo podem variar de microssegundos

(19)

a mil ˆenios. As possibilidades de relacionamentos temporais e espaciais s ˜ao complexas e geram dificuldades em sua an ´alise e busca por padr ˜oes [Han et al., 2007].

Uma posic¸ ˜ao espacial (por simplicidade, posic¸ ˜ao) p ´e definida como um trio ordenado(x, y, z), ondex,yezindicam valores das coordenadas no sistema Cartesiano.

Sejamf ehduas posic¸ ˜oes, tais quef = (xf, yf, zf)eh= (xh, yh, zh). A dist ˆancia entre f eh, denotada pordist(f, h), ´e calculada usando a dist ˆancia euclideana: dist(f, h) = p(xh−xf)2+ (yh−yf)2+ (zh−zf)2.

SejaP ={p1, p2, ..., pm}um conjunto de posic¸ ˜oes, umaSequ ˆencia com Marcac¸ ˜ao de Tempo e Espac¸o (do ingl ˆesSpatial Time-stamped Sequence) (STS)st´e uma du- pla(p, t), ondep∈P ´e uma posic¸ ˜ao et ´e a TS associada. Desta forma, um conjunto de dados de STSD ´e um conjunto de STS. Diz-se que uma STSst= (p, t) suporta uma sequ ˆencias, ses ´e uma subsequ ˆencia emt: sup(s, st) =|Q|,∀q ∈Q|s=sub|s|,q(st.t). O suportede uma sequ ˆenciasemD ´e o n ´umero de marcac¸ ˜oes de tempo emDem ques est ´a inclu´ıdo, denotado por:sup(s, D) =|Q|,∀q ∈Q,∃sti ∈D|s=sub|s|,q(sti.t), ondeQ ´e o conjunto de marcac¸ ˜oes de tempo da sequ ˆenciasemD.

A frequ ˆencia de uma sequ ˆenciasem uma STSst ´e a frac¸ ˜ao dest.tque apresenta suportes: f req(s, st) = sup(s,st)|st.t| . Saleh and Masseglia [2008] definem a frequ ˆencia de um conjunto de itens aplicada sobre uma base de dados como sendo o n ´umero de transac¸ ˜oes que apresentam a ocorr ˆencia dos itens dividido pelo tamanho total do conjunto de dados.

Desta forma, afrequ ˆenciade uma sequ ˆencia semD ´e a frac¸ ˜ao de tempo emD que suporta s, representada por: f req(s, D) = sup(s,D)|st.t| , st ∈ D, assumindo que |st.t| ´e o mesmo em todas as STS. Dado um valor m´ınimo definido pelo usu ´arioγ ∈]0,1], uma sequ ˆencia ´e dita frequente, sef req(s, D)≥γ.

Umper´ıodo de tempo(por simplicidade,per´ıodo)r= (rs, re) ´e definido por uma marcac¸ ˜ao de tempo inicialrse uma marcac¸ ˜ao de tempo finalre. O tamanho do per´ıodor

´e dado por: |r|=re−rs+ 1.P R ´e o conjunto de todas os poss´ıveis per´ıodos de tempo sobre o conjunto de dadosD.

(20)

2.2- Minerac¸ ˜ao de Sequ ˆencias

A minerac¸ ˜ao de dados ´e um processo de descoberta de padr ˜oes significativos em um conjunto de dados. A ´area de conhecimento de minerac¸ ˜ao de sequ ˆencias ´e uma especializac¸ ˜ao da minerac¸ ˜ao de dados, focada em encontrar sequ ˆencias ou s ´eries de eventos em bases de dados, os quais ocorrem formando algum tipo de padr ˜ao, um conjunto de atributos que aparecem persistentemente em meio ao conjunto de dados [Aydin and Angryk, 2016]. Para efetuar tal tarefa s ˜ao utilizados conceitos de diferentes

´areas de conhecimento, como a estat´ıstica, aprendizado de m ´aquina, reconhecimento de padr ˜oes, intelig ˆencia artificial, dentre outras [Hand, 2007; Witten et al., 2016; Roiger, 2017; Klemettinen et al., 1994; Aydin and Angryk, 2016].

O conceito de minerac¸ ˜ao de sequ ˆencias, primeiramente abordado por Agrawal and Srikant [1995], evoluiu e apresenta novas definic¸ ˜oes. Tsai and Shieh [2009] descrevem minerac¸ ˜ao de sequ ˆencias como a t ´ecnica que explora padr ˜oes frequentes que ocorrem relacionados ao tempo extra´ıdos de uma base de dados. O objetivo da minerac¸ ˜ao de sequ ˆencias ´e o de ser capaz de observar um conjunto de subsequ ˆencias que s ˜ao frequentes em um conjunto de dados. Isso significa que sua frequ ˆencia excede um valor m´ınimo definido pelo usu ´ario.

Um dos mais conhecidos algoritmos de busca de padr ˜oes frequentes ´e o Apriori.

A ideia chave por tr ´as dos algoritmos Apriori ´e que, como o pr ´oprio nome diz, ele utiliza conhecimentos pr ´evios para realizar a busca por padr ˜oes frequentes. Sequ ˆencias candidatas de tamanhok+ 1s ˜ao baseadas em combinac¸ ˜oes de sequ ˆencias frequentes j ´a descobertas de tamanho k. Esta fase da minerac¸ ˜ao de sequ ˆencias ´e conhecida como gerac¸ ˜ao de candidatos, a qual leva em conta o conceito antimonot ˆonico, o qual frequentemente ´e citado, no ˆambito de minerac¸ ˜ao de sequ ˆencias, como: para que uma sequ ˆencia seja frequente suas subsequ ˆencias tem de ser frequentes. Exemplificando, na busca de padr ˜oes frequentes tal conhecimento ´e usado da seguinte forma: a exist ˆencia das sequ ˆencias de tamanho dois AB e BC permite a gerac¸ ˜ao de um candidato de tamanho tr ˆesABC [Mooney and Roddick, 2013].

O algoritmo SPADE ´e um dos algoritmos baseados na t ´ecnica Apriori. Ele utiliza bases de dados em um formato vertical baseada em identificadores e usa t ´ecnicas de busca baseadas em rede (busca em largura e busca em profundidade). SPADE aplica

(21)

propriedades combinat ´orias para decompor o espac¸o de busca em sub-redes que podem ser processadas independentemente na mem ´oria principal, permitindo assim que o banco de dados seja verificado at ´e tr ˆes vezes, o que minimiza E/S e custos computacionais.

Este algoritmo permite tamb ´em a adic¸ ˜ao de restric¸ ˜oes as buscas de sequ ˆencias [Zaki, 2001].

cSPADE ´e uma extens ˜ao do SPADE que adiciona restric¸ ˜oes nas buscas de sequ ˆencias frequentes, as seguintes foram adicionadas: comprimento ou largura nas sequ ˆencias, intervalo m´ınimo ou m ´aximo em elementos de sequ ˆencia consecutivos, janela de tempo total de validade da sequ ˆencia, restric¸ ˜oes de item e enumerar sequ ˆencias preditivas de uma determinada classe entre um conjunto de valores de classe Zaki [2000].

Um problema relacionado a abordagem Apriori ´e o grande n ´umero de candidatos gerados. O paradigma de crescimento de padr ˜ao frequente (pattern growth) remove a necessidade de gerac¸ ˜ao de candidatos, adotando uma abordagem de divis ˜ao e conquista que usa projec¸ ˜oes do conjunto de dados. Em lugar de efetuar buscas por todo o conjunto de dados com todo o conjunto de candidatos, este paradigma divide o conjunto de dados e tamb ´em as sequ ˆencias a serem verificadas, o que pode resultar em melhor desempenho em grandes conjuntos de dados [Han et al., 2000; Mooney and Roddick, 2013].

A minerac¸ ˜ao de sequ ˆencias relacionadas a espac¸o e tempo ´e a busca por co- nhecimentos relacionados aos fen ˆomenos que envolvem tanto componentes espaciais como temporais, tentando encontrar todas as sequ ˆencias de eventos significantes, ´uteis, interessantes e n ˜ao triviais [Aydin and Angryk, 2016; Sunitha and Rama Mohan Reddy, 2014; Alatrista-Salas et al., 2015; Huang et al., 2008].

Um padr ˜ao espac¸o-temporal trata de uma sequ ˆencia de eventos as quais s ˜ao res- tritas a uma regi ˜ao e a um per´ıodo de tempo. ´E importante observar que estas sequ ˆencias restritas no espac¸o e no tempo podem apresentar baixo suporte, se considerarmos todo o conjunto de dados, mas se consideradas dentro de um per´ıodo de tempo e de espac¸o alcanc¸am valores mais altos [Huang et al., 2008].

Na busca por padr ˜oes frequentes, alguns trabalhos utilizam n ˜ao apenas a minerac¸ ˜ao de dados, mas tamb ´em t ´ecnicas de agrupamento. Tal abordagem busca agrupar espaci- almente ocorr ˆencias de eventos pr ´oximas utilizando o grupo como uma ´unica regi ˜ao e, dessa forma, restringindo padr ˜oes espacialmente. Esta forma de trabalho, assim como outras, podem ser vistas no Cap´ıtulo 3, que vem a seguir.

(22)

3- Trabalhos Relacionados

Este trabalho de pesquisa foi realizado a partir do desenvolvimento de um mapa sistem ´atico da literatura relacionada ao assunto aqui pesquisado sobre minerac¸ ˜ao de sequ ˆencias restritas no espac¸o e no tempo. Pretende-se com essa revis ˜ao sistem ´atica buscar mais informac¸ ˜oes acerca do assunto, identificar lacunas e comparar o presente trabalho de pesquisa com outros no contexto onde se insere.

Como ponto de partida foi conduzida uma busca por palavras-chave contidas nos campos: t´ıtulo, resumo e palavras-chave de documentos na l´ıngua inglesa na base de dados Scopus. A seguinte string de busca foi utilizada: TITLE-ABS-KEY((“sequence mining” OR “sequential pattern”) AND (“space-time” OR “spatiotemporal”)) AND (LIMIT- TO(LANGUAGE, “English”)). Como resultado da busca, foram obtidas oitenta e tr ˆes refer ˆencias a documentos, entre artigos e confer ˆencias.

Alguns dos documentos n ˜ao estavam relacionados ao assunto aqui discutido e dois foram classificados comosurvey sobre do tema de minerac¸ ˜ao de padr ˜oes frequentes:

Sunitha and Rama Mohan Reddy [2014] descreveram umsurvey sobre minerac¸ ˜ao de padr ˜oes em bases de dados espac¸o-temporais. Ele apresenta as principais t ´ecnicas para descoberta de tr ˆes tipos de padr ˜oes espac¸o temporais, de acordo com a ordenac¸ ˜ao em relac¸ ˜ao ao tempo: sequenciais (totalmente ordenados), co-ocorr ˆencia (desordenados) e em cascata (parcialmente ordenados). Os autores pontuam como trabalhos futuros o uso de medidas de avaliac¸ ˜ao e t ´ecnicas de validac¸ ˜ao de padr ˜oes de real interesse com o intuito de reduzir o n ´umero de padr ˜oes insignificantes gerados e, assim, a quantidade de mem ´oria utilizada na busca por tais padr ˜oes. Sukanya and Ranjit Jeba Thangaiah [2019] realizaram uma revis ˜ao dos trabalhos relacionados a minerac¸ ˜ao de padr ˜oes frequentes, observando principalmente suas diferentes aplicac¸ ˜oes, al ´em de abordar poss´ıveis direc¸ ˜oes futuras.

Os outros sessenta e tr ˆes artigos foram classificados de acordo com os conjuntos de dados utilizados em suas pesquisas e ser ˜ao discutidos nas sec¸ ˜oes que se seguem.

Nem todos os artigos s ˜ao discutidos, foram escolhidos para leitura completa apenas os que, ap ´os r ´apida leitura do t´ıtulo e do resumo, mais significativos e/ou apresentaram relac¸ ˜ao direta ao trabalho aqui descrito. A Sec¸ ˜ao 3.1 aborda nove dos quarenta trabalhos

(23)

que utilizam conjuntos de dados de trajet ´orias, os quais buscam padr ˜oes referentes ao movimento. No contexto de minerac¸ ˜ao de sequ ˆencias, a trajet ´oria de um objeto ´e uma sequ ˆencia de locais com marcac¸ ˜ao de tempo. Portanto, uma base de dados de trajet ´oria cont ´em registros de posic¸ ˜oes no espac¸o com sua respectiva marcac¸ ˜ao de tempo [Giannotti et al., 2007].

A Sec¸ ˜ao 3.2 aborda dezessete dos vinte e tr ˆes trabalhos que utilizam conjuntos de dados de posic¸ ˜oes fixas, os quais buscam padr ˜oes referentes `as sequ ˆencias de eventos.

Em tais conjuntos de dados, para diferentes posic¸ ˜oes no espac¸o, registram-se os eventos que se d ˜ao em um dado per´ıodo de tempo. Por fim, a Sec¸ ˜ao 3.3 traz uma comparac¸ ˜ao entre as abordagens encontradas na literatura relacionadas ao presente trabalho.

3.1- Bases de Dados de Trajet ´oria

Os trabalhos referentes aos conjuntos de dados de trajet ´oria descrevem uma colec¸ ˜ao de eventos do mesmo objeto, ou fen ˆomeno natural, movendo-se em diferentes marcac¸ ˜oes de tempo e espac¸o. A colec¸ ˜ao de eventos pode estar relacionada aos movi- mentos de grupos [Feuerhake and Sester, 2013], `as atividades humanas de deslocamento [Li and Fu, 2014; Chen et al., 2014; Lee et al., 2016; Xu and Kwan, 2020], `as regi ˜oes baseadas em pol´ıgonos que se movem [Aydin and Angryk, 2016; Aydin et al., 2020], `as postagens em uma rede social [Huang et al., 2016], aos fen ˆomenos geogr ´aficos [He et al., 2020], ou mesmo `as corridas de t ´axi [Yang and Gid ´ofalvi, 2018; Ibrahim and Shafiq, 2019;

Cheng et al., 2020].

Feuerhake and Sester [2013] buscaram padr ˜oes de movimento em grupo, como por exemplo, padr ˜oes de formac¸ ˜oes de ataque ou defesa em uma partida de futebol. A abordagem consiste em dois passos. Primeiro, a clusterizac¸ ˜ao ´e aplicada sobre diferentes marcac¸ ˜oes de tempo nos dados, permitindo que elementos, que possuem suas posic¸ ˜oes descritas uns em relac¸ ˜ao aos outros, sejam descobertos. Neste passo, as poss´ıveis rotac¸ ˜oes, translac¸ ˜oes e mudanc¸as de escala s ˜ao consideradas. Como segundo passo, eles buscaram no conjunto de dados por sequ ˆencias dos grupos.

Chen et al. [2014] utilizaram minerac¸ ˜ao de padr ˜oes sequenciais com o intuito de extrair sequ ˆencias de lugares frequentemente visitados e us ´a-los para modelar um perfil

(24)

de mobilidade. Isso possibilita, ent ˜ao, comparar diferentes perfis e calcular a similaridade entre eles. A construc¸ ˜ao do perfil de mobilidade segue quatro passos:i) marcar pontos de parada de cada trajet ´oria;ii) aplicar um algoritmo de agrupamento nos pontos para gerar rotas de interesse;iii) transformar as trajet ´orias GPS em trajet ´orias com rotas de interesse; eiv) minerar padr ˜oes de trajet ´oria frequentes.

Li and Fu [2014] e Lee et al. [2016] buscaram padr ˜oes frequentes para predizer atividades humanas de deslocamento. No intuito de predizer pr ´oximos passos de ativida- des em andamento, eles compararam padr ˜oes encontrados nas sequ ˆencias modeladas com as em atividades andamento.

Aydin and Angryk [2016] propuseram dois algoritmos para minerac¸ ˜ao de sequ ˆencias espac¸o-temporais de regi ˜oes em movimento. Este trabalho foi estendido em Aydin et al.

[2020], no qual um novo algoritmo foi introduzido. O intuito ´e minerar sequ ˆencias de even- tos espac¸o-temporais em uma base de dados de trajet ´orias de regi ˜oes em movimento, sem informac¸ ˜ao de valores limites definidos pelo usu ´ario. Tal algoritmo repete aleatoria- mente o processo de minerac¸ ˜ao em um subconjunto aleat ´orio de inst ˆancias estimando um ´ındice de participac¸ ˜ao das sequ ˆencias de eventos. Ambos os trabalhos restringem tempo e espac¸o de forma que o movimento entre duas inst ˆancias s ´o ´e considerado se predicados de continuidade temporal e proximidade espacial forem atendidos.

Huang et al. [2016] buscaram padr ˜oes de trajet ´orias frequentes a partir de dados de mensagens com marcac¸ ˜oes geoespaciais de uma rede social. Primeiro, um algoritmo de clusterizac¸ ˜ao ´e aplicado para agrupar em regi ˜oes os locais onde o usu ´ario posta suas mensagens. Para encontrar as trajet ´orias, verifica-se novamente as mensagens (restritas no tempo de um dia) e as regi ˜oes onde ocorreram, cada mudanc¸a de regi ˜ao se traduz como uma trajet ´oria.

Ibrahim and Shafiq [2019], com o intuito de descobrir padr ˜oes de trajet ´orias fre- quentes, agruparam pontos de origem e destino de viagens de t ´axi, identificando distritos (da cidade do Porto, em Portugal) aos quais pertencem. A partir dessas informac¸ ˜oes, os pontos e hor ´arios de maior concentrac¸ ˜ao de corridas foram encontrados. Outra informac¸ ˜ao obtida foi a de padr ˜oes frequentes usando o algoritmo SPADE para minerac¸ ˜ao de sequ ˆencias frequentes.

He et al. [2020] analisaram as caracter´ısticas de fen ˆomenos geogr ´aficos complexos propondo uma nova estrutura espac¸o-temporal hier ´arquica complexa para representar rotas espac¸o-temporais. Uma abordagem de minerac¸ ˜ao de padr ˜oes espac¸o-temporal

(25)

complexa baseada em eventos ´e proposta neste artigo. Eles aplicaram minerac¸ ˜ao de sequ ˆencias para buscar padr ˜oes na propagac¸ ˜ao dos fen ˆomenos desenvolvendo uma nova t ´ecnica baseada no algoritmo SPADE.

Embora os trabalhos apresentados na presente sec¸ ˜ao sejam relevantes, eles buscam padr ˜oes diferentes dos explorados neste trabalho. No presente trabalho, n ˜ao s ˜ao buscados padr ˜oes de trajet ´orias, mas sim padr ˜oes de sequ ˆencias de eventos, onde todos os eventos de uma mesma sequ ˆencia ocorrem em uma mesma posic¸ ˜ao. A sec¸ ˜ao que se segue aborda trabalhos que utilizam bases de dados de posic¸ ˜oes fixas.

3.2- Bases de Dados de Posic¸ ˜oes Fixas

A presente sec¸ ˜ao aborda trabalhos que utilizam bases de dados de posic¸ ˜ao fixa, ou seja, dados obtidos do ambiente atrav ´es do uso de sensores fixos [Batu et al., 2017].

Dessa forma, bases de dados de posic¸ ˜ao fixa podem consistir do comportamento dos clientes em suas compras [Chen et al., 2020; Koseoglu et al., 2020], de dados hidrol ´ogicos [Alatrista-Salas et al., 2015, 2016], de imagens de sat ´elite [Julea et al., 2008, 2011] ou de padr ˜oes de crime [Chen et al., 2017].

Tsoukatos and Gunopulos [2001] usaram a abordagem da teoria de rede para decompor o espac¸o de pesquisa original. Eles efetuaram uma busca em profundidade, que encontra apenas as sequ ˆencias espac¸o-temporais de tamanho m ´aximo. Desta forma, a proposta n ˜ao faz uso de grande quantidade de mem ´oria, uma vez que n ˜ao precisa de todas as sequ ˆencias de tamanhokpara gerar as de tamanhok+ 1. Este algoritmo n ˜ao visa reduzir o n ´umero de varreduras do conjunto de dados. Ele efetua buscas para averiguar a frequ ˆencia de um conjunto de sequ ˆencias e as agrupa em diferentes granularidades no espac¸o utilizando uma abordagem de pr ´e-processamento para unir sub regi ˜oes.

Julea et al. [2008] e Julea et al. [2011] tem, nos seus trabalhos, o intuito de descobrir padr ˜oes de sequ ˆencia atrav ´es do uso de s ´eries de imagens de sat ´elite. O primeiro trabalho apresenta duas t ´ecnicas distintas, utilizando para ambas o algoritmo SPADE na tarefa de minerac¸ ˜ao de sequ ˆencias. O primeiro trabalho se baseia em duas t ´ecnicas distintas, utilizando para ambas o algoritmo SPADE na tarefa de minerac¸ ˜ao

(26)

de sequ ˆencias. O segundo trabalho aplica o uso de aprendizado de m ´aquina n ˜ao supervisionado. Assim, ele apresenta as diferentes t ´ecnicas para descric¸ ˜ao das imagens obtidas por sat ´elite, e introduz um novo tipo de padr ˜ao de minerac¸ ˜ao de dados dedicado

`a extrac¸ ˜ao depixelsque dividem um padr ˜ao temporal e que observem, na m ´edia, uma conectividade espacial m´ınima. A t ´ecnica pode ser utilizada em v ´arios tipos de imagens com diferentes resoluc¸ ˜oes.

Leong and Chan [2012] propuseram um algoritmo que busca por sequ ˆencias de eventos frequentes por todo um conjunto de dados espac¸o-temporal, o qual pode ser dividido em cinco fases: i) ordenac¸ ˜ao do conjunto de dados,ii) busca por eventos que apresentem suporte maior que um m´ınimo estabelecido,iii) remoc¸ ˜ao de transac¸ ˜oes que n ˜ao apresentem ao menos um item com suporte maior ou igual ao pr ´e definido,iv) gerac¸ ˜ao de padr ˜oes sequenciais e, por fim,v) uma fase que mant ´em apenas padr ˜oes m ´aximos, eliminando padr ˜oes que estejam contidos dentro de outros.

Flamand et al. [2014] utilizaram minerac¸ ˜ao de dados meteorol ´ogicos e epide- miol ´ogicos para avaliar potenciais causas de surtos de dengue na Guiana Francesa.

Este trabalho relacionou os padr ˜oes temporais encontrados atrav ´es do uso do algoritmo PrefixSpan [Pei et al., 2004] com o contexto epidemiol ´ogico ou espacial. Os padr ˜oes encontrados mostram associac¸ ˜oes entre condic¸ ˜oes meteorol ´ogicas e a evoluc¸ ˜ao da incid ˆencia de dengue.

Gurram and Rama Mohan Reddy [2014] definiram uma estrutura de dados em forma de grafo para representar dados espac¸o-temporais com o intuito de reduzir o n ´umero de buscas na base de dados. Os autores tamb ´em propuseram um algoritmo para minerar padr ˜oes sequenciais, considerando uma dimens ˜ao de tempo e uma de espac¸o.

Para isso, eventos s ˜ao posicionados em uma representac¸ ˜ao cartesiana, dividindo-a em ret ˆangulos, chamados de “c ´elulas”, as que tiverem uma densidade maior que um valor pr ´e- definido s ˜ao transformadas em um grafo sequencial em mem ´oria. Por fim, define-se uma medida de signific ˆancia para descobrir padr ˜oes ´uteis a qual leva em conta a densidade das “c ´elulas”. Um grande problema desta abordagem ´e que a divis ˜ao em ret ˆangulos pode remover eventos importantes apenas porque ca´ıram em uma “c ´elula” pouco densa, assim as ligac¸ ˜oes com estes eventos s ˜ao perdidas mesmo para c ´elulas densas pr ´oximas a este.

Alatrista-Salas et al. [2015] aplicaram um processo de descoberta de padr ˜oes sobre um conjunto de dados hidrol ´ogicos com o objetivo de analisar a qualidade da ´agua.

O processo consiste em quatro etapas:i)agrupar os dados de acordo com a dist ˆancia;

(27)

ii)extrair padr ˜oes sequenciais levando em considerac¸ ˜ao o aspecto temporal; iii)filtrar as sequ ˆencias retendo apenas os que est ˜ao de acordo com uma medida de interesse temporal; eiv)gerar soluc¸ ˜oes agrupadas de acordo com a t ´ecnica S2MP [Saneifar et al., 2008] e o algoritmo de clusterizac¸ ˜aok−medoids.

Chen et al. [2015] buscaram por padr ˜oes espac¸o-temporais colocando os dados de entrada (identificac¸ ˜ao do evento, marcac¸ ˜ao de tempo, posic¸ ˜ao e tipo de evento) em uma ´arvore R. Para montar a representac¸ ˜ao em ´arvore R, um n ´o ´e utilizado como piv ˆo (elemento inicial da sequ ˆencia) e os elementos que ocorreram antes do primeiro evento e os que ocorrem depois da marcac¸ ˜ao de tempo do primeiro mais a restric¸ ˜ao de tempo (definido como par ˆametro) s ˜ao removidos. Os elementos que sobram geram uma sequ ˆencia que se inicia com o piv ˆo. Depois, a restric¸ ˜ao espacial para cada sequ ˆencia, que deve ocorrer dentro de um raio (definido como par ˆametro), ´e verificada. Para cada sequ ˆencia descoberta, verifica-se seu n ´umero de ocorr ˆencias, mantendo as que forem frequentes.

Sunitha and Rama Mohan Reddy [2016] propuseram a inclus ˜ao de priorizac¸ ˜ao em forma de pesos no processo de minerac¸ ˜ao utilizando duas medidas de interesse “peso da sequ ˆencia” e “´ındice de signific ˆancia”. Os pesos s ˜ao associados por especialistas no dom´ınio de acordo com a import ˆancia dos tipos de evento, regi ˜oes geogr ´aficas e intervalos de tempo. Como resultado relevante, os autores apontaram a reduc¸ ˜ao do n ´umero de padr ˜oes descobertos, reduzindo o n ´umero de padr ˜oes insignificantes.

Alatrista-Salas et al. [2016] definiram duas medidas utilizadas para reduc¸ ˜ao do n ´umero de padr ˜oes encontradosabsolute support espatiotemporal participation index.

Eles propuseram tamb ´em dois algoritmos para a minerac¸ ˜ao de padr ˜oes espac¸o temporais, um baseado em busca em largura com uma estrat ´egiaa priori, derivado do algoritmo SPADE e o outro baseado em busca em profundidade com uma estrat ´egiapattern-growth.

Xue et al. [2016], com o intuito de descobrir padr ˜oes frequentes, desenvolveram um m ´etodo eficaz reduzindo o n ´umero de buscas sobre o conjunto de dados e aumentando o desempenho do processo de minerac¸ ˜ao. O algoritmo proposto ´e baseado nos conceitos de assimetria de informac¸ ˜ao, n ˜ao aditividade (a informac¸ ˜ao diminui ap ´os cada n´ıvel em processos de v ´arios n´ıveis) e antimonotonicidade.

Yusof and Zurita-Milla [2017] utilizaram um processo em tr ˆes etapas com o intuito de encontrar padr ˜oes de perfis e ´olicos:i)minerac¸ ˜ao de padr ˜oes (utilizando o algoritmo Linear time Closed Itemset Miner Sequence - LCMSeq),ii) detecc¸ ˜ao de padr ˜oes simi-

(28)

lares no espac¸o e no tempo, eiii)avaliac¸ ˜ao da conformidade dos padr ˜oes para gerar perfis e ´olicos. Esta abordagem busca padr ˜oes em s ´eries individuais e, depois, encontra intersec¸ ˜oes dos padr ˜oes no espac¸o e no tempo.

Chen et al. [2017] abordaram o problema de descoberta de padr ˜oes frequentes espac¸o-temporais encadeados sobre bases de dados sem informac¸ ˜ao de identidade, ou seja, n ˜ao diz quais ac¸ ˜oes foram realizadas por quais sujeitos. Os autores propuseram uma abordagem que busca por padr ˜oes em um per´ıodo de tempo e espac¸o definidas pelo usu ´ario utilizando um modelo baseado em grafos chamado TKSTP.

Batu et al. [2017] propuseram um algoritmo que n ˜ao depende da entrada de par ˆametros definidos pelo usu ´ario para buscar padr ˜oes. Tal algoritmo usa um procedi- mento estoc ´astico e um modelo de Hawkes [Hawkes, 1971] para definir relac¸ ˜oes entre os tipos de eventos. Os autores aplicaram tal algoritmo sobre dois conjuntos de dados um sint ´etico e um real com dados de acidentes de tr ´afego.

Zhang et al. [2018] buscaram por padr ˜oes em s ´eries temporais medidas sobre diferentes elementos mas que em conjunto descrevem o estado de um sistema. Para isso, eles utilizaram uma abordagem de tr ˆes est ´agios: extrac¸ ˜ao de caracter´ısticas, descoberta de estados frequentes e s´ıntese de padr ˜oes.

Wan et al. [2019] definiram como s ´eries temporais correlacionadas as que s ˜ao registradas simultaneamente para monitorar e refletir um sistema. Eles utilizaram Redes Neurais Recorrentes (Recurrent Neural Network) baseadas no modeloLong Short Term Memory (LSTM)para prever futuros valores de s ´eries temporais correlacionadas de uma maneira coletiva.

Chen et al. [2020] investigaram padr ˜oes de consumo sobre uma base de dados de registro de compras, usando duas perspectivas. A primeira foi a perspectiva espacial e temporal de maneira agregada, buscando responder a quest ˜ao de onde e quando os eventos de compra ocorrem mais (conhecidos comohot spots). Para isso, foi realizado um agrupamento espac¸o-temporal utilizando um m ´etodo denominado ST-DBSCAN [Birant and Kut, 2007] (baseado no DBSCAN), obtendo grupos dos locais e intervalos de tempo onde as compras mais ocorrem. A segunda foi a perspectiva da trajet ´oria de maneira individual para responder a pergunta de qual a sequ ˆencia de localizac¸ ˜ao das compras realizadas pelos clientes. Para isso, foi utilizada uma t ´ecnica h´ıbrida de minerac¸ ˜ao de padr ˜oes sequenciais sem ˆanticos combinando o algoritmo PrefixSpan e a an ´alise sem ˆantica de Point of Interest (POI) [Han et al., 2001]. No entanto, este trabalho considera apenas

(29)

sequ ˆencias dentro de um per´ıodo de tempo de uma semana.

Koseoglu et al. [2020] propuseram uma abordagem de an ´alise visual, que incor- pora a extrac¸ ˜ao de padr ˜ao espac¸o-temporal utilizando um algoritmo de minerac¸ ˜ao de padr ˜ao sequencial estendido e um mecanismo de orientac¸ ˜ao de descoberta de padr ˜ao operando em consulta geogr ´afica. O trabalho aborda passos da concepc¸ ˜ao da ferramenta de an ´alise visual centrada no usu ´ario utilizada para explicar tend ˆencias comportamentais dos grupos de clientes que mudam em relac¸ ˜ao ao tempo, localizac¸ ˜ao e tipo de cliente.

O presente trabalho faz parte desta classe, tamb ´em utilizando base de dados de posic¸ ˜oes fixas. Os pontos que o diferenciam dos outros trabalhos s ˜ao abordados na sec¸ ˜ao que se segue.

3.3- Comparac¸ ˜ao

Na minerac¸ ˜ao em bases de dados com marcac¸ ˜oes de espac¸o e tempo, cada trabalho utiliza m ´etodos diferentes. Alguns utilizam apenas minerac¸ ˜ao de dados na busca por padr ˜oes frequentes, levando em conta somente o tempo [Li and Fu, 2014;

Lee et al., 2016; He et al., 2020; Tsoukatos and Gunopulos, 2001; Julea et al., 2008;

Leong and Chan, 2012; Xue et al., 2016; Zhang et al., 2018], ou introduzindo alguma restric¸ ˜ao pr ´evia para tamb ´em levar em conta o espac¸o [Aydin and Angryk, 2016; Aydin et al., 2020; Julea et al., 2011; Flamand et al., 2014; Gurram and Rama Mohan Reddy, 2014; Chen et al., 2015; Sunitha and Rama Mohan Reddy, 2016; Chen et al., 2017; Batu et al., 2017; Koseoglu et al., 2020]. Outros utilizam a minerac¸ ˜ao de dados para a busca de padr ˜oes frequentes no tempo e tamb ´em agrupamento com o intuito de agrupar posic¸ ˜oes espaciais [Feuerhake and Sester, 2013; Chen et al., 2014; Huang et al., 2016; Yusof and Zurita-Milla, 2017; Ibrahim and Shafiq, 2019; Alatrista-Salas et al., 2015, 2016; Chen et al., 2020]. O presente trabalho efetua uma abordagem diferente. A minerac¸ ˜ao de dados ´e realizada, buscando sequ ˆencias frequentes no tempo, mas tais sequ ˆencias frequentes devem ocorrer em grupos espaciais de forma que tais grupos possuam um certo n ´umero m´ınimo de posic¸ ˜oes espaciais (definido pelo usu ´ario), e cada posic¸ ˜ao espacial deve estar a uma dist ˆancia m ´axima (tamb ´em definida pelo usu ´ario) em relac¸ ˜ao a uma outra posic¸ ˜ao do mesmo grupo.

(30)

Apesar deste trabalho fazer parte da classe de posic¸ ˜oes fixas, cada trabalho lida com restric¸ ˜oes de maneiras diferentes. Alguns usam suporte global (um valor de suporte que ´e v ´alido para todo o conjunto de dados) [Tsoukatos and Gunopulos, 2001; Leong and Chan, 2012; Xue et al., 2016; Yusof and Zurita-Milla, 2017; Batu et al., 2017; Zhang et al., 2018]. Outros consideram suporte local, aplicando restric¸ ˜oes pr ´e-definidas de tempo, espac¸o ou ambos. Julea et al. [2011] limitaram o espac¸o em n ´umero de pontos de uma imagem. Flamand et al. [2014] restringiram o espac¸o em territ ´orios geogr ´aficos e o tempo em intervalos. Gurram and Rama Mohan Reddy [2014] mapearam os eventos do conjunto de dados em c ´elulas em forma de uma grade de acordo com o tempo e espac¸o, essas c ´elulas t ˆem seu tamanho definido pelo usu ´ario limitando o tempo e o espac¸o.

Alatrista-Salas et al. [2015] pr ´e-processaram os dados construindo zonas homog ˆeneas de objetos espaciais. Chen et al. [2015] limitaram o espac¸o em raios e o tempo em per´ıodo de tempos. Sunitha and Rama Mohan Reddy [2016] restringiram o espac¸o em sub-regi ˜oes e o tempo em intervalos. Alatrista-Salas et al. [2016] limitaram o espac¸o em zonas. Chen et al. [2017] pr ´e-definiram um per´ıodo de tempo e um raio para o espac¸o.

Chen et al. [2020] consideraram o tempo dentro de uma semana para evitar grandes intervalos entre eventos. Koseoglu et al. [2020] permitiram o usu ´ario limitar tanto o tempo quanto o espac¸o.

O presente trabalho lida com tais restric¸ ˜oes de uma maneira diferente, pois n ˜ao considera inicialmente limitac¸ ˜oes de tempo ou espac¸o. Ele encontra as sequ ˆencias frequentes, a regi ˜ao no espac¸o e o per´ıodo de tempo em que s ˜ao frequentes. Desta forma, o algoritmo a ser apresentado neste trabalho ´e capaz de encontrar diferentes tamanhos de sequ ˆencias, intervalos de tempo e regi ˜oes do espac¸o onde uma sequ ˆencia

´e frequente.

A Tabela 1 mostra a classificac¸ ˜ao dos trabalhos relacionados de acordo com a base de dados (trajet ´oria ou posic¸ ˜ao fixa), o m ´etodo utilizado (minerac¸ ˜ao de sequ ˆencias ou agrupamento com minerac¸ ˜ao de sequ ˆencias), e as restric¸ ˜oes aplicadas sobre o m ´etodo, que podem ser suporte global ou suporte local com espac¸o fixo e /ou tempo fixo.

Como pode ser observado, o ´unico trabalho com abordagem semelhante encon- trado na literatura ´e o proposto por Campisano et al. [2018], o qual busca por sequ ˆencias frequentes apenas em intervalos de tempo e regi ˜oes no espac¸o, comec¸ando a buscar sequ ˆencias primeiro no espac¸o e depois no tempo. Dessa forma, ele considera o espac¸o de forma linear. O presente trabalho estende-o com uma nova perspectiva sobre o

(31)

Tabela 1 – Classificac¸ ˜ao dos trabalhos relacionados apresentando informac¸ ˜oes do m ´etodo utilizado e das restric¸ ˜oes aplicadas.

Classe Trabalho M ´etodo Restric¸ ˜oes

Min. Agrup. + Min. Sup. Global Espac¸o Fixo Tempo Fixo

Feuerhake and Sester [2013] X X

Chen et al. [2014] X X X

Li and Fu [2014] X X

Aydin and Angryk [2016] X X X

Trajet ´oria Huang et al. [2016] X X X

Lee et al. [2016] X X

Ibrahim and Shafiq [2019] X X

Aydin et al. [2020] X X X

He et al. [2020] X X

Tsoukatos and Gunopulos [2001] X X

Julea et al. [2008] X X

Julea et al. [2011] X X

Leong and Chan [2012] X X

Flamand et al. [2014] X X X

Gurram and Rama Mohan Reddy [2014] X X X

Alatrista-Salas et al. [2015] X X

Chen et al. [2015] X X X

Pos. Fixa Sunitha and Rama Mohan Reddy [2016] X X X

Alatrista-Salas et al. [2016] X X

Xue et al. [2016] X X

Yusof and Zurita-Milla [2017] X X

Chen et al. [2017] X X X

Batu et al. [2017] X X

Campisano et al. [2018] X

Zhang et al. [2018] X X

Chen et al. [2020] X X

Koseoglu et al. [2020] X X X

problema, passando a buscar as sequ ˆencias primeiro no tempo e depois no espac¸o.

Usando tal abordagem foi poss´ıvel generaliz ´a-lo considerando o espac¸o de maneira tridimensional.

At ´e onde alcanc¸aram as buscas aqui apresentadas, a abordagem proposta neste trabalho ´e a primeira capaz de encontrar sequ ˆencias restritas no espac¸o e no tempo que funcionam com uma dimens ˜ao de tempo e tr ˆes dimens ˜oes de espac¸o. Assim, para efeito de comparac¸ ˜ao, tamb ´em desenvolvemos a abordagem SPADE+DBSCAN baseada em Alatrista-Salas et al. [2015]. Tal trabalho agrupou dados de acordo com a dist ˆancia e extraiu padr ˜oes sequenciais para levar em considerac¸ ˜ao o aspecto temporal.

SPADE+DBSCAN combina um algoritmo de minerac¸ ˜ao de sequ ˆencias com um m ´etodo de agrupamento capaz de encontrar grupos que contenham sequ ˆencias frequen- tes em tr ˆes etapas: i) encontrar todas as sequ ˆencias frequentes, usando o algoritmo SPADE;ii)para cada sequ ˆencia frequente, encontrar todas as suas ocorr ˆencias no con- junto de dados; eiii)agrupar as ocorr ˆencias de cada sequ ˆencia frequente, utilizando o

(32)

algoritmo de agrupamento DBSCAN baseado na noc¸ ˜ao de densidade. Assim, temos sequ ˆencias frequentes e seus grupos que s ˜ao restritos no espac¸o e no tempo.

A abordagem SPADE+DBSCAN servir ´a de baseline para comparac¸ ˜ao com o algoritmo G-STSM. Esta comparac¸ ˜ao ser ´a apresentada no Cap´ıtulo 5, e neste mesmo cap´ıtulo, na Sec¸ ˜ao 5.3, mais detalhes acerca da abordagem SPADE+DBSCAN s ˜ao apresentados.

(33)

4- Metodologia

Este cap´ıtulo apresenta a soluc¸ ˜ao proposta para o problema de Minerac¸ ˜ao de Sequ ˆencias Restritas no Espac¸o e no Tempo, na forma do algoritmo G-STSM. Conside- rando um conjunto de dados STSD, o problema abordado neste trabalho ´e encontrar sequ ˆencias emDque s ˜ao frequentes em posic¸ ˜oes espaciais e per´ıodo de tempo restri- tos. O objetivo ´e descobrir sequ ˆencias frequentes, o per´ıodo de tempo e o conjunto de posic¸ ˜oes em que essas sequ ˆencias s ˜ao frequentes.

A Sec¸ ˜ao 4.1 apresenta a formalizac¸ ˜ao do problema que este trabalho pretende resolver, trazendo conceitos fundamentais para este trabalho. Na Sec¸ ˜ao 4.2 os algoritmos desenvolvidos s ˜ao apresentados. Por fim, na Sec¸ ˜ao 4.3 ´e apresentado um exemplo utilizando um conjunto de dados sint ´etico.

4.1- Formalizac¸ ˜ao do Problema

Umgrupo de posic¸ ˜oes espaciais(por simplicidadegrupo)g ´e definido por um conjunto de posic¸ ˜oes onde seus elementos devem estar a uma distancia m ´aximaσ de ao menos um outro elemento do grupo, ou seja: g|∀p ∈ g,∃q ∈ g|dist(p, q) ≤ σ. P ´e o conjunto de todas as posic¸ ˜oes. P G ´e o conjunto de todos os poss´ıveis grupos de posic¸ ˜oes sobre o conjunto de dadosD. O conjunto de STS de um grupog ´e definido por:

sts(g) =SG|∀st∈SG, st.p∈g.

UmRanged Group(RG)rg ´e um trio(s, r, g), ondes ´e uma sequ ˆencia,r ´e um per´ıodo de tempo eg ´e um grupo. As ocorr ˆencias de uma sequ ˆenciasem um RGrg, definido poroccur(s, r, g), referem-se ao n ´umero de todas as ocorr ˆencias desno intervalo r em sts(g). O suporte de uma sequ ˆencias em um RG rg, denotado por sup(s, r, g),

´e o n ´umero de marcac¸ ˜oes de tempo que scomec¸a no intervalo r em sts(g), ou seja:

sup(s, r, g) =|Q|,∀q∈Q,∃st∈sts(g)|s=sub|s|,q(st.t), rs≤q≤re,|s| ≤re. A frequ ˆencia de uma sequ ˆenciasem um RGrg,f req(s, r, g), ´e a divis ˜ao do suporte do RGsup(s, r, g) pelo tamanho der:f req(s, r, g) = sup(s,r,g)|r| .

(34)

Dados os limites m´ınimos definidos pelo usu ´ario para frequ ˆenciaγe para tamanho do grupoβ, as caracter´ısticas de umKernel Range-Group(KRG)e de umSolid Range- Group(SRG)s ˜ao apresentadas na Definic¸ ˜ao 1 e na Definic¸ ˜ao 2, respectivamente.

Definic¸ ˜ao 1 Sejargum RG com sequ ˆencias, per´ıodo de tempor, e grupog. Ent ˜ao,rg

´e chamado de KRG, se e somente se, as seguintes condic¸ ˜oes forem verdadeiras:

1)f req(s, r, g)≥γ 2)|g| ≥β

3)∀r0∈P R|r0 ⊂r er0.rs =r.rs, ambas as condic¸ ˜oes se aplicam:

a)sup(s, r0, g)< sup(s, r, g) b)f req(s, r0, g)≥γ

4)∀g0 ∈P G|g⊆g0, occur(s, r, g0) =occur(s, r, g) 5)∀g0 ∈P G|g0 ⊂g, occur(s, r, g0)< occur(s, r, g)

A primeira condic¸ ˜ao certifica que a frequ ˆencia de uma sequ ˆenciasem um per´ıodo de temporsobre as STS de um grupog(i.e. sts(g)) pertencente ao RGrg ´e maior que uma frequ ˆencia m´ınimaγ definida pelo usu ´ario. A segunda condic¸ ˜ao certifica que o grupo gdeve respeitar o tamanho m´ınimoβ definido pelo usu ´ario.

A terceira condic¸ ˜ao certifica que para todo per´ıodo de tempor0 pertencente ao conjunto de todos os poss´ıveis intervalos de tempoP R, contido no per´ıodo de tempo r e comec¸ando na mesma marcac¸ ˜ao de tempo, as seguintes condic¸ ˜oes devem ser verdadeiras: (a) o suporte emr0ser ´a menor e (b) a frequ ˆencia ser ´a maior que a frequ ˆencia m´ınima definida pelo usu ´arioγ. Em outras palavras, diminuir o per´ıodo de tempo mant ´em uma frequ ˆencia maior que o m´ınimo, mas diminui o suporte. Pode-se dizer que a condic¸ ˜ao garante que o tamanho de r ´e m´ınimo entre os intervalos que comec¸am na mesma marcac¸ ˜ao de tempo.

A quarta condic¸ ˜ao certifica que para todo o grupog0 pertencente ao conjunto dos poss´ıveis gruposP G, tal quegest ´a contido ou ´e igual ag0, a ocorr ˆencia da sequ ˆencias no per´ıodo de temporser ´a igual em ambos os grupos. Em outras palavras, aumentar o grupo mant ´em o mesmo n ´umero de ocorr ˆencias (i.e., n ˜ao vale a pena aumentar o grupo degparag0, visto que o aumento n ˜ao vai contribuir para o n ´umero de ocorr ˆencias des).

Pode-se dizer que a condic¸ ˜ao garante que o tamanho deg ´e m ´aximo.

Por fim, a quinta condic¸ ˜ao certifica que para todo grupog0pertencente ao conjunto

(35)

de todos poss´ıveis gruposP G, tal queg0 est ´a contido emg, a ocorr ˆencia da sequ ˆencias no per´ıodo de tempordiminuir ´a no grupog0. Em outras palavras, diminuir o grupo reduz o n ´umero de ocorr ˆencias (i.e., n ˜ao vale a pena diminuir o grupo degparag0, pois isso tamb ´em reduz o n ´umero de ocorr ˆencias des). Pode-se dizer que a condic¸ ˜ao garante que o tamanho deg ´e m´ınimo.

Definic¸ ˜ao 2 Sejargum RG com uma sequ ˆencias, per´ıodo de tempor, e grupog. Ent ˜ao, rg ´e chamado de SRG se e somente se as condic¸ ˜oes que se seguem se aplicarem:

1)f req(s, r, g)≥γ 2)|g| ≥β

3)∀r0∈P R|r⊆r0, ´e poss´ıvel ter a) ou b) ou ambas:

a)sup(s, r0, g) =sup(s, r, g) b)f req(s, r0, g)< γ

4)∀r0∈P R|r0 ⊂r, sup(s, r0, g)< sup(s, r, g) 5)∀g0 ∈P G|g⊆g0, occur(s, r, g0) =occur(s, r, g) 6)∀g0 ∈P G|g0 ⊂g, occur(s, r, g0)< occur(s, r, g)

A primeira condic¸ ˜ao certifica que a frequ ˆencia de uma sequ ˆenciasem um per´ıodo de temporsobre as STS de um grupog(i.e. sts(g)) pertencente ao RGrg ´e maior que uma frequ ˆencia m´ınima γ definida pelo usu ´ario . A segunda condic¸ ˜ao certifica que o grupo deve respeitar o tamanho m´ınimoβ definido pelo usu ´ario .

A terceira condic¸ ˜ao certifica que para todo per´ıodo de tempor0 pertencente ao conjunto de todos os poss´ıveis per´ıodos de tempoP R, que cont ´em o per´ıodo de tempor, as afirmac¸ ˜oes (a) ou (b), ou ambas devem ser verdadeiras: (a) o suporte no per´ıodo de tempor0 ser ´a igual ao suporte no per´ıodo de tempor; (b) a frequ ˆencia emr0 ser ´a menor que a frequ ˆencia definida pelo usu ´ario. Assim, n ˜ao adianta aumentar o per´ıodo de tempo, pois mantemos o suporte, e podemos acabar reduzindo a frequ ˆencia a um valor menor que a m´ınima definida pelo usu ´ario. Pode-se dizer que a condic¸ ˜ao garante que o per´ıodo de tempor ´e m ´aximo.

A quarta condic¸ ˜ao certifica que para todo per´ıodo de tempor0 pertencente ao conjunto de todos os per´ıodos de tempoP R, tal quer0 est ´a contido emr, o suporte para o per´ıodo de tempor0 ser ´a menor que parar. De fato,sapresenta suporte na primeira e na

´ultima marcac¸ ˜ao de tempo no per´ıodo de tempor, ent ˜ao se um per´ıodo de tempo menor

(36)

existe ondes ´e frequente, o suporte ser ´a menor. Em outras palavras, diminuir o per´ıodo de tempo diminui o suporte. Pode-se dizer que a condic¸ ˜ao garante que o tamanho do per´ıodo de tempor ´e m´ınimo.

A quinta condic¸ ˜ao certifica que para todo grupog0 que pertence ao conjunto de todos poss´ıveis gruposP G, tal quegest ´a contido emg0, a ocorr ˆencia da sequ ˆenciasser ´a igual para o grupoge para o grupog0 no mesmo per´ıodo de tempor. Ou seja, aumentar o grupo mant ´em o n ´umero de ocorr ˆencias da sequ ˆencia. Pode-se dizer que a condic¸ ˜ao garante que o tamanho do grupog ´e m ´aximo.

Finalmente, a sexta condic¸ ˜ao certifica que para todo grupog0 que pertence ao conjunto de todos poss´ıveis gruposP G, tal queg0 est ´a contido em g, a ocorr ˆencia da sequ ˆenciasser ´a menor que para o grupogno mesmo per´ıodo de tempor. Em outras palavras, diminuir o grupo diminui o n ´umero de ocorr ˆencias da sequ ˆencia. Pode-se dizer a condic¸ ˜ao garante que o tamanho do grupog ´e m´ınimo.

Sejako tamanho da sequ ˆencias, ent ˜aosrg ´e um SRG de tamanhok. SRGk ´e o conjunto de todos SRG de tamanhok.

Como foi dito no in´ıcio deste cap´ıtulo, o problema que se pretende resolver ´e o de Minerac¸ ˜ao de Sequ ˆencias Restritas no Espac¸o e no Tempo, ou seja, encontrar o per´ıodo de tempo e o conjunto de posic¸ ˜oes (i. e., SRG) onde as sequ ˆencias s ˜ao frequentes.

Portanto, usando as definic¸ ˜oes descritas nesta sec¸ ˜ao, o objetivo deste trabalho ´e encontrar todos os SRGs que respeitem a Definic¸ ˜ao 2.

A Sec¸ ˜ao 4.2, que se segue, apresenta o algoritmo que utiliza os conhecimen- tos aqui abordados e ´e proposto por este trabalho como soluc¸ ˜ao para o processo de Minerac¸ ˜ao de Sequ ˆencias Restritas no Espac¸o e no Tempo.

4.2- Algoritmo G-STSM

Esta sec¸ ˜ao apresenta os algoritmos que fazem parte de cada passo no processo de Minerac¸ ˜ao de Sequ ˆencias Restritas no Espac¸o e no Tempo na forma do algoritmo proposto, o G-STSM. Tal algoritmo ´e projetado para a identificac¸ ˜ao de sequ ˆencias frequen- tes em conjuntos de dados espac¸o-temporais a partir do conceito de SRG. As noc¸ ˜oes de grupo (RG, KRG e SRG) introduzidas na sec¸ ˜ao anterior permitem a extrac¸ ˜ao de

(37)

sequ ˆencias restritas no espac¸o e no tempo de forma eficiente.

O G-STSM ´e baseado no princ´ıpio de gerac¸ ˜ao de candidatos. Nosso objetivo

´e comec¸ar a encontrar SRG para sequ ˆencias de tamanho um e explorar o suporte e o n ´umero de ocorr ˆencias de SRG para sequ ˆencias maiores com um n ´umero limitado de varreduras no conjunto de dados. Para isso, precisamos encontrar o per´ıodo de tempo e o conjunto de posic¸ ˜oes (i. e., o SRG) em que uma sequ ˆencia candidata ´e frequente em apenas uma varredura.

Seja c ∈ Ck um candidato de tamanho k no conjunto de candidatos Ck. Na estrutura de dados definida, c est ´a associado a uma sequ ˆencia c.seq, ao per´ıodo de tempoc.range, ao conjunto de posic¸ ˜oes espaciaisc.pos, e ao conjunto de RGsc.rgsda sequ ˆenciac.seq sobre o per´ıodo de tempoc.rangeque ocorre nas STS cujo conjunto de posic¸ ˜oes s ˜aoc.pos. Um RGrgest ´a associado a uma sequ ˆenciarg.s, um per´ıodo de temporg.re um grupo de posic¸ ˜oes espaciaisrg.g. Al ´em disso,rg.f req ´e a frequ ˆencia da sequ ˆenciarg.semrgerg.occ ´e um conjunto de ocorr ˆencias derg.semrg. Por fim, um valor l ´ogico (rg.closed) permite saber o estado do RG. Um valorverdadeirosignifica que, em algum momento, durante a varredura do conjunto de dados ao tentar estender seu per´ıodo de tempo, sua frequ ˆencia se tornou menor que a frequ ˆencia m´ınima definida pelo usu ´arioγ.

Um KRGkrgpossui todas as informac¸ ˜oes de um RG, onde sua frequ ˆencia ´e maior ou igual aγ, o tamanho de seu grupo ´e maior ou igual aβ e nele suas posic¸ ˜oes est ˜ao a uma dist ˆancia m ´aximaσ de pelo menos uma outra posic¸ ˜ao do mesmo grupo. Da mesma forma, um SRG est ´a associado `as mesmas informac¸ ˜oes de um RG. A Figura 3 detalha, atrav ´es do uso de um diagrama UML, a estrutura de dados referente aos candidatos e seu relacionamento com as outras estruturas de dados utilizadas neste trabalho, os RGs, KRG e SRG.

Figura 3 – Diagrama UML referente as estruturas de dados utilizadas. Um candidatoc possui um conjunto de Ranged Groupsc.rgs. Ranged Group generaliza Kernel Range- Group, que por sua vez generaliza Solid Range-Group.

(38)

Na Subsec¸ ˜ao 4.2.1, a seguir, apresentamos o algoritmo G-STSM al ´em dos deta- lhes de seu funcionamento.

4.2.1 Princ´ıpio Geral

O Algoritmo 1 ´e o ponto de entrada do processo proposto neste trabalho. Ele recebe como entrada um conjunto de dados STSD, um conjunto de itensI, um con- junto de posic¸ ˜oes espaciaisP referentes `as STS e os limites definidos pelo usu ´ario:

a frequ ˆencia m´ınima γ, o tamanho m´ınimo de um grupo β e a distancia m ´axima de ao menos um outro elemento do grupoσ. O algoritmo possui tr ˆes func¸ ˜oes principais para: (i) encontrar os KRGs atrav ´es do uso da func¸ ˜ao F indKernelRangeGroup, deta- lhada na Subsec¸ ˜ao 4.2.2, (ii) unir KRGs para identificar SRGs atrav ´es do uso da func¸ ˜ao M ergeKernelRangeGroups, detalhada na Subsec¸ ˜ao 4.2.3 e (iii) gerar candidatos atrav ´es do uso da func¸ ˜aoGenerateCandidates, detalhada na Subsec¸ ˜ao 4.2.4.

O algoritmo inicia sua execuc¸ ˜ao gerando sequ ˆencias candidatas de tamanho um.

Elas s ˜ao constru´ıdas a partir de todos os itens distintos deI apresentados no conjunto de dados STSD, considerando todo o seu per´ıodo de tempo e todas as posic¸ ˜oes espaciais P (linhas 3 a 5). Em seguida, uma repetic¸ ˜ao (linhas 6 a 25) calcula, para cada rodada k, ondek ´e equivalente ao tamanho da sequ ˆencia buscada, todos osSRGk com uma frequ ˆencia maior ou igual aγ, tamanho do grupo maior ou igual a β, e as posic¸ ˜oes do grupo a uma dist ˆancia m ´aximaσde pelo menos uma outra posic¸ ˜ao do mesmo grupo.

A busca sobre o conjunto de dados STSD ´e realizada a partir de uma “janela deslizante” de comprimentok(linha 9) igual ao tamanho da sequ ˆencia para encontrar os KRGs de cada candidatoc∈Ckna func¸ ˜aoF indKernelRangeGroup(linhas 10 a 14). O motivo do uso de uma janela deslizante de tamanhok, tamanho igual ao da sequ ˆencia,

´e que toda a sequ ˆencia buscada possa ser verificada. Exemplificando, se buscamos uma sequ ˆencia de tamanho tr ˆes, digamos “ACE”, ent ˜ao s ˜ao necess ´arias tr ˆes marcac¸ ˜oes de tempo para verificar se a sequ ˆencia completa est ´a presente, dessa forma, a janela deslizante possui sempre o tamanho da sequ ˆencia para a qual buscamos os KRGs.

Ap ´os a execuc¸ ˜ao do algoritmo F indKernelRangeGroup alguns KRGs podem acabar com seu atributoclosedcom valorfalsoe sem a devida validac¸ ˜ao. Este trabalho ´e

Referências

Documentos relacionados

Este documento pode ser acessado no endereço eletrônico http://www.tst.jus.br/validador sob código 1003F3D2A712044F47... Firmado por assinatura digital em 09/12/2020 pelo

General: Knowing the conceptual and methodological foundations of the main projective methods; Identify and understand the operational concepts of projection and distress; Identify

Não será concedido trancamento de matrícula durante o primeiro semestre do curso ou durante a vigência de prorrogação de prazo para a conclusão de

Még jó ideig érezte, hogy Kinnard látogatása sen hatott rá, aztán egyszer csak azon kapta magát, hogy már Edward viselkedésén töpreng. Ezért volt olyan meglepő, hogy

15, estão representados os teores médios de safrol contido em óleo essencial obtido, no decorrer do progresso de extração, da biomassa aérea de pimenta longa procedente de cultivos

As técnicas são baseadas em descontinuidade: detecção de pontos isolados, detecção de linhas e detecção de bordas, e similaridade: limiares (Thresholding), crescimento de

Foram incluídos no estudo os portadores de cirrose hepática e carcinoma hepatocelular diagnosticado pelos critérios da EASL ( European Association for the Study of the Liver ). Após

Partindo da premissa que a monitoria no ensino superior se constitui como incentivadora para a formação de professores, o presente estudo versa sobre o processo