THE V*-DIAGRAM: A QUERY-DEPENDENT APPROACH TO MOVING KNN QUERIES Capoccia Emiliano - DIorio Andrea - Fontanelli Davide Sarana Nutanong Rui Zhang Egemen.

Slides:



Advertisements
Presentazioni simili
Algoritmi e Strutture Dati
Advertisements

Il raffinamento dello schema e la normalizzazione nei database relazionali Eugenio Di Sciascio.
L’ IPERBOLE.
Algoritmi e Strutture Dati
2. Introduzione alla probabilità
ECTS: la conversione dei voti Maria Sticchi Damiani Parte IV Conservatorio di Musica “N. Paganini” Genova, 2 maggio
Capitolo 3 Risorse e Stallo 3.1. Risorse 3.2. Introduzione
Proprietà degli stimatori
1 Processi e Thread Processi Thread Meccanismi di comunicazione fra processi (IPC) Problemi classici di IPC Scheduling Processi e thread in Unix Processi.
1 2. Introduzione alla probabilità Definizioni preliminari: Prova: è un esperimento il cui esito è aleatorio Spazio degli eventi elementari : è linsieme.
1 la competenza alfabetica della popolazione italiana CEDE distribuzione percentuale per livelli.
Algoritmi e Strutture Dati
Meccanica 8 31 marzo 2011 Teorema del momento angolare. 2° eq. Cardinale Conservazione del momento angolare Sistema del centro di massa. Teoremi di Koenig.
Lez. 121 Universita' di Ferrara Facolta' di Scienze Matematiche, Fisiche e Naturali Laurea Specialistica in Informatica Algoritmi Avanzati Progettazione.
Inferenza Statistica Le componenti teoriche dell’Inferenza Statistica sono: la teoria dei campioni la teoria della probabilità la teoria della stima dei.
Lez. 3 - Gli Indici di VARIABILITA’
Routing Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights Reserved)
esponente del radicando
RB-alberi (Red-Black trees)
Alberi binari di ricerca
RISPARMIO, ACCUMULAZIONE DI CAPITALE E PRODUZIONE
3. Processi Stocastici Un processo stocastico è una funzione del tempo i cui valori x(t) ad ogni istante di tempo t sono v.a. Notazione: X : insieme di.
1 14. Verifica e Validazione Come assicurarsi che il software corrisponda alle necessità dellutente? Introdurremo i concetti di verifica e validazione.
Algoritmi e Strutture Dati
Capitolo 10 Tecniche algoritmiche Algoritmi e Strutture Dati.
Identificazione delle attività
Capitolo 9 I numeri indici
1 Capitolo 2: Semplificazione, Ottimizzazione e Implicazione.
1 Esempi di consistenza sui limiti Non consistente sui limiti, considera Z=2, poi X-3Y=10 Ma il dominio qui sotto e consistente sui limiti: Confrontare.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Capitolo 12 Minimo albero ricoprente: Algoritmi di Prim e di Borůvka Algoritmi.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Algoritmi e Strutture Dati Capitolo 2 Modelli di calcolo e metodologie.
Algoritmi e Strutture Dati
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Capitolo 9 Il problema della gestione di insiemi disgiunti (Union-find) Algoritmi e Strutture Dati.
Capitolo 7 Tavole hash Algoritmi e Strutture Dati.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Capitolo 12 Minimo albero ricoprente: Algoritmi di Prim e di Borůvka Algoritmi.
Algoritmi e Strutture Dati
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Capitolo 4 Ordinamento: Selection e Insertion Sort Algoritmi e Strutture Dati.
Processi Aleatori : Introduzione – Parte I
8. Reti di Code Nella maggior parte dei processi produttivi risulta troppo restrittivo considerare una sola risorsa. Esempio: linea tandem arrivi 1 v.
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Risorse e Stallo.
CONTROLLO DI SUPPLY CHAIN MEDIANTE TECNICHE H-INFINITO E NEGOZIAZIONE
Algoritmi e Strutture Dati
QuickSort Quick-Sort(A,s,d) IF s < d THEN q = Partiziona(A,s,d) Quick-Sort(A,s,q-1) Quick-Sort(A,q + 1,d)
Lezione 8 Numerosità del campione
Num / 36 Lezione 9 Numerosità del campione.
Notazioni Asintotiche e Ordini di Grandezza delle funzioni
1 Questionario di soddisfazione ATA - a. sc. 2008/09 Il questionario è stato somministrato nel mese di aprile Sono stati restituiti 29 questionari.
Towards Robust Indexing for Ranked Queries aa 09/10 Candeloro D. Orlando M. Pedone A. Gruppo 5.
Algoritmi e Strutture Dati
Discovering Relative Importance of Skyline Attributes Gruppo 8 Altobelli Andrea (Relatore) Ciotoli Fabio Denis Mindolin, Jan Chomicki.
Camil Demetrescu, Irene Finocchi, Giuseppe F. ItalianoAlgoritmi e strutture dati Capitolo 12 Minimo albero ricoprente: Algoritmi di Prim e di Borůvka Algoritmi.
Ad opera di: Matteo Donatelli e Maurizio Di Paolo Presentazione su : Elettropneumatica 1.
Index Land Surface for Efficient kNN Query Gruppo 2 Riccardo Mascia Roberto Saluto Relatore Roberto Saluto Cyrus Shahabi Lu-An TangSonghua Xing.
Voronoi-Based K Nearest Neighbor Search for Spatial Network Databases
Superfici nascoste Daniele Marini.
Aprofondimenti e Applicazioni
La teoria dei campioni può essere usata per ottenere informazioni riguardanti campioni estratti casualmente da una popolazione. Da un punto di vista applicativo.
Pippo.
Un esempio nel settore commerciale
Cap. 15 Caso, probabilità e variabili casuali Cioè gli ingredienti matematici per fare buona inferenza statistica.
Metaclassificazione Giovedì, 18 novembre 2004 Francesco Folino ( Combinare Classificatori Lecture 8.
Lez. 3 - Gli Indici di VARIABILITA’
Capitolo 7 Tavole hash Algoritmi e Strutture Dati Camil Demetrescu, Irene Finocchi, Giuseppe F. Italiano.
Algoritmi e Strutture Dati
Voronoi-Based K Nearest Neighbor Search for Spatial Network Databases1 GRUPPO 13: Relatore: Mengoli Dario Mengoli Dario Rovatti Fabrizio Tassoni Davide.
Sommario Analisi del dominio: i sistemi per la localizzazione
Transcript della presentazione:

THE V*-DIAGRAM: A QUERY-DEPENDENT APPROACH TO MOVING KNN QUERIES Capoccia Emiliano - DIorio Andrea - Fontanelli Davide Sarana Nutanong Rui Zhang Egemen Tanin Lars Kulik Gruppo 17

Moving k-NN Queries Lobiettivo di una MkNN query è calcolare i k nearest neighbors relativi ad un punto query che si muove con continuità. Un possibile Scenario Unambulanza in servizio, potrebbe mantenere una lista aggiornata dei k ospedali più vicini alla sua posizione corrente. 2

MkNN – Un altro possibile scenario Un veicolo dotato di GPS può voler ottenere le k stazioni di servizio più vicine alla sua posizione corrente. Durante il movimento del veicolo le k stazioni più vicine possono cambiare, e il risultato della query deve essere aggiornato di conseguenza. 3

Approcci alla computazione Esistono due approcci di base alla computazione di MkNN queries: Sampling based (polling) La query kNN viene ripetuta con una data frequenza di campionamento. Safe region based Al risultato della singola query kNN è associato una regione (safe region). Il movimento del punto query allinterno della regione non modifica il risultato. La query viene ricalcolata se il punto lascia la safe region. 4

Sampling Based Pregi Semplicità di implementazione, consiste nel ripetere una query kNN Difetti Tra due punti di campionamento la risposta potrebbe non essere corretta. Anche se i kNNs non cambiano, le query vengono comunque calcolate. Utilizzando un sampling rate più alto, otteniamo una maggior precisione. Sfortunatamente, così facendo aumentiamo anche il numero di query inutili, ovvero che non portano ad una variazione del risultato. 5

Safe Region Based La query kNN viene ricalcolata solo quando si è certi che il risultato precedente non sia più valido, ovvero quando il punto query esce dalla safe region. Lapproccio, meno banale, permette di conseguire Continuità della risposta Efficienza 6

Voronoi Diagram Tecnica di decomposizione dello spazio, determinata dalle distanze rispetto ad un insieme di oggetti P = {p 1,p 2,…,p n }. Ogni cella V(p i ) del diagramma è formata dai punti dello spazio per cui p i costituisce loggetto di P a distanza minore. V(c) 7

Voronoi Diagram (2) Ogni cella di un VD è una safe region 1NN. Lapproccio può essere generalizzato al caso kNN, associando una cella a k oggetti (kVD). Difetti: Precomputazione costosa; è necessario accedere allintero dataset per calcolare tutte le celle del kVD. Non supporta la variazione di k dinamica. Variazioni del dataset portano a ricalcolare lintero kVD. 8

V*- Diagram Approccio safe region based. Ipotesi: Il dominio è uno spazio metrico Disponiamo di un indice spaziale (es. R-Tree) sul dataset Per il calcolo dei NNs viene utilizzato lalgoritmo next -NN. 9 V*D mantiene traccia dei (k+x)NNs del punto query MkNN, dove x è il numero di oggetti ausiliari Il dominio è uno spazio metrico. Per definire la safe region utilizzata da V*D (ISR), sono introdotte: Safe Region wrt a data object FRR (Fixed Rank Region) Il calcolo della safe region si basa, oltre che sul dataset, sul punto query e sullattuale conoscenza dello spazio di ricerca.

Safe Region wrt a data object Sia q b lultimo punto in cui abbiamo calcolato la query (k+x)NN. Sia z il (k+x)° NN di q b. Chiamiamo known region W(q b,z) la (iper-)sfera con centro q b e raggio dist(q b, z). Sia p uno dei (k+x-1) NN di q b. qbqb p z W(q b,z) 10

Safe Region wrt a data object (2) Sia q il nuovo punto query, dopo uno spostamento. Sia y lintersezione del prolungamento del segmento con W(q b,z) Chiamiamo reliable region rispetto a q la (iper-)sfera con centro q e raggio dist(q, y). qbqb p z W(q b,z) y q Finchè p rimane allinterno della reliable region wrt q, è garantito che p sia uno dei (k+x)NNs di q dist(q,p) dist(q b,z) – dist(q b,q) 11

Safe Region wrt a data object (3) Considerando q come una variabile, la disequazione individua la safe region wrt p. qbqb p z W(q b,z) y q S(q b,z,p) = {q: dist(q,p) + dist(q b,q) dist(q b,z)} Finchè q rimane allinterno di S(q b,z,p), p è reliable, ovvero è sicuramente uno dei (k+x)NNs di q. 12

Fixed Rank Region (FRR) La FRR è un insieme dei punti query che condividono lo stesso ranking per un insieme di oggetti Il ranking è basato ovviamente sulla distanza dal punto query FRRa,b,c è definita dalle bisettrici Bab, Bbc. Quando q attraversa una bisettrice, il ranking dei due punti corrispondenti è invertito a,b,c b,a,c 13

FRR in V*D Coincide localmente con una cella del kVD V*D mantiene la FRR relativa alla lista dei (k+x)NNs, a differenza di tecniche precedenti che calcolavano FRR sulla base dellintero dataset. Finchè q rimane allinterno di FRR(L), con L lista ordinata dei (k+x)NNs, il ranking di tali oggetti resta lo stesso 14

Integrated Safe Region (ISR) La ISR è definita come: Finché q rimane nellISR, sono garantite entrambe le proprietà precedenti: Il ranking dei (k+x)NNs non cambia Ognuno dei kNNs rimane reliable non esistono oggetti al di fuori di W(q b,z) più vicini a q rispetto ad essi ISR è la safe region che V*-Diagram associa ad una query MkNN. 15

ISR - Ottimizzazione Si può dimostrare che non è necessario calcolare le safe region rispetto a tutti i primi kNNs. Il vincolo sul ranking posto da FRR, garantisce 16 Safe region solo rispetto al k-esimo NN!

ISR - Esempio k = 2 x = 2 L = ISR(q1,f,c,L) 17

Un modello ad eventi Il punto query può abbandonare ISR in due modi distinti, che scatenano due tipi di eventi: 1. Uscendo dalla FRR(L) Rank Update 2. Uscendo dalla S(q b, z, p k ) Reliability Update Tali eventi sono generati da un processo di campionamento della posizione del punto query Sample Based computazione pesante V*-Diagram computazione leggera, accettabile alta frequenza (è necessario solo controllare che q sia interno a ISR) 18

Rank Update In t1 il ranking dei (k+x)NNs è compromesso. Viene ricalcolata incrementalmente la nuova FRR e la nuova ISR. Si notifica la variazione SOLO se questa riguarda i primi kNNs. NON viene ricalcolata la query (k+x)NN. 19

Reliability Update In t2 il k°NN non è più reliable. Viene ricalcolato la query (k+x)NN nel punto corrente. Viene ricostruita la nuova ISR. Né i kNNs, né il loro ranking cambia: non è necessario notificare alcuna variazione. 20

Algoritmo V*-KNN Rank Update Reliability Update Inizializzazione query (k+x)NN 21

Modifica dataset V*D supporta la modifica dinamica del dataset Inserimento di oggetti Rimozione di oggetti È significativa solo se il punto interessato fa parte della known region. La posizione del punto (inserito/rimosso), rispetto al punto query, comporta il ricalcolo, a seconda dei casi, di: Query (k+x)NN + ISR Solo ISR È più efficiente rispetto ad un approccio globale. 22

Variazione dinamica k V*D supporta la variazione dinamica del parametro k. Decremento Incremento (caso significativo) Intuitivamente, vengono sfruttati gli x oggetti ausiliari come cuscinetto per assorbire le variazioni. In ogni caso viene ricalcolata la ISR La computazione della query (k+x)NN è necessaria solo quando è esaurito il margine dato dagli x oggetti. 23

Scelta del parametro x Un numero elevato x di oggetti ausiliari comporta: Safe region S più ampie minore probabilità di uscirne (conoscenza maggiore del dataset). La query (k+x)NN deve reperire più oggetti. La query (k+x)NN è calcolata meno spesso, ma è più costosa. Un tipico valore di compromesso è intorno alla decina. Il grafico riporta i tempi di risposta per quattro distinti dataset, al variare di x. Da notare che il trend su x si mantiene indipendentemente dalla dimensione e dalla distribuzione del dataset 24

Conclusioni Grazie allidea base della ISR, Utilizzo della conoscenza locale dello spazio di ricerca Considerazione del punto query V*D riesce ad ottenere performance migliori nel calcolo di MkNN, rispetto ad altri algoritmi safe-region-based Il costo della gestione degli oggetti ausiliari (non presenti in altri algoritmi) è giustificato da Minore frequenza di query kNN Attuale trend di sviluppo della tecnologia, anche mobile, in grado ormai di supportare tali costi. 25

GRUPPO 17 GRAZIE DELLATTENZIONE 12/03/2009