1 / 29

Index Land Surface for Efficient kNN Query

Cyrus Shahabi Lu-An Tang Songhua Xing. Index Land Surface for Efficient kNN Query. Gruppo 2 Riccardo Mascia Roberto Saluto. Relatore Roberto Saluto. Obiettivi. Necessità di trovare siti più vicini sulla superficie terrestre soprattutto nei casi di aree non pianeggianti

Download Presentation

Index Land Surface for Efficient kNN Query

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cyrus Shahabi Lu-An Tang Songhua Xing Index Land Surface for Efficient kNN Query Gruppo 2 Riccardo Mascia Roberto Saluto Relatore Roberto Saluto

  2. Obiettivi • Necessità di trovare siti più vicini sulla superficie terrestre soprattutto nei casi di aree non pianeggianti • Risolvere query in 3-D chiamate Surface k Nearest Neighbor poiché sono effettuate su database geospaziali 3-D che tengono conto dell’altimetria della superficie • Progettare una struttura indicizzata su database geospaziali del mondo reale per migliorare velocità e accuratezza delle risposte alle query skNN

  3. Query Surface k Nearest Neighbor • Risolvere queste query significa affrontare tre problematiche: • Gestione di enormi database contenenti la rappresentazione 3D del modello della superficie • Sostenere la complessità di calcolo per la ricerca del più breve percorso di superficie • Mancanza di strutture indicizzate della superficie per un’esecuzione più rapida per l’esecuzione di queste query

  4. Approcci Esistenti per queryskNN • I principali approcci attuali per questo tipo di query sono: • Range Ranking che fornisce risposte in modo rapido ma approssimativo • CH Algorithm che restituisce risposte precise ma è lento

  5. Concetti di base (1) • Per la tecnica • Distanza di superficie (Ds) : è la lunghezza del percorso più breve che collega due punti sulla superficie • Distanza Euclidea in 3D (De) : è la linea retta che collega due punti De Ds

  6. Concetti di base (2) • Distanza di rete (Dn): Dato un modello di superfice costruito attraverso TIN (Triangolar Irregular Network), la distanza di rete è la lunghezza del percorso più breve tra due punti, attraverso i lati dei triangoli . TIN è una struttura dati vettoriale basata su triangoli con maglia irregolare , capace di fornire elevata risoluzione solo dove questa è necessaria Si nota che sulla superficie si ha:De ≤ Ds ≤ Dnquindi De e Dn possono essere considerati rispettivamente LowerBound e Upper Bound per Ds Dn

  7. Concetti di base (4) • Dato un poliedro il percorso più breve tra due punti sulla sua superficie, è definito dall’algoritmo CH, come la lunghezza della più breve linea retta che collega i due punti, dopo aver dispiegato su un piano tutte le sue facce in diversi ordini

  8. Concetti di base (5) • Un diagramma di Voronoi divide uno spazio in celle disgiunte a seconda dei siti. Per ogni punto della query che cade all'interno di una cella, il punto più vicino è il generatore della cella (il sito corrispondente a quella cella). Il confine comune tra due celle di Voronoi vicine è la bisettrice perpendicolare della linea che collega i due siti corrispondentil

  9. Tight Surface Index • Gli autori propongono due schemi di indicizzazione spaziale della superficie: • Il primo è il Tight SurfaceIndex (TSI) che definisce uno spazio stretto intorno ad un sito p, nel quale ad ogni punto è garantito di avere p come NearestNeighbor per distanza di superficie

  10. Tight Surface Index • Definiamo Tight Cell come una zona poligonale attorno ad un sito pi definito daTC(pi)={q : q ϵ T, Dn(pi,q)<De (pj,q) (∀ pj ϵ P, pj ≠ pi)}dove pi è chiamato generatore di TC(pi), T è il modello della superficie e P l’insieme dei siti • Proprietà: per ogni punto query q ϵ TC(pi) , il NearestNeighbor di q, calcolato con la distanza di superficie, è pi • Quindi il TSI è l’insieme delle Tight Cell generate da PTSI(P) = {TC(p1)……TC(Pm)}

  11. Loose Surface Index • Il Loose Surface Index (LSI) definisce uno spazio ampio intorno ad un sito p, all’esterno del quale ad ogni punto è garantito di non avere p come suo Nearest Neighbor per distanza di superficie • Definiamo Loose Cell come zona poligonale attorno ad un sito pi definito da LC(pi)={q:q ϵT, De(pi,q)<Dn (pj,q) (∀ pj ϵ P, pj ≠ pi)}dove pi è chiamato generatore di LC(pi), T è il modello della superficie e P l’insieme dei siti

  12. Loose Surface Index • La LooseCell di ogni sito contiene completamente la Tight Cell • Al sito p è garantito di non essere il NearestNeighbor di q se q è esterno a LC(pi) • Quindi il LSI è l’insieme delle LooseCell generate da P. LSI(P) = {LC(p1)……LC(Pm)} • Dato che la TSI e LSI sono generati per lo stesso insieme di siti P, le tight cell e le loosecell devono avere bordi in comune; più in particolare, tutti i confini delle tight cell sono anche i bordi delle loosecell

  13. Loose Surface Index • Dato un sito p, i vicini di p sono definiti come NL(p)={pi | TC(pi) ed LC(p) hanno confini in comune}

  14. Loose Surface Index • Se pi è il punto più vicino di q, allora il più breve percorso di superficie da q a pi è all'interno della Loose LC(pi).

  15. Costruzione Naïve dell’indice • I punti di transizione devono essere sui bordi e la loro distanza di rete da p è uguale al minimo delle sue distanze euclidee da tutti gli altri siti Collegando tutti i punti di transizione attraverso la superficie dei triangoli si generano i bordi delle tight cell • Illustriamo l’approccio di base per la costruzione del TSI 2 p 1

  16. Costruzione veloce dell’indice • La generazione dell’indice appena proposta è significativamente complessa perché deve esaminare i vertici di ogni triangolo • Si generano i diagrammi di Voronoi per i siti nello spazio euclideo e si individuano i triangoli che sono attraversati dal bordo delle celle di Voronoi • Dato un qualsiasi sito p, la sua tight cell si trova dentro la sua cella di Voronoi

  17. Costruzione veloce dell’indice • I triangoli appena individuati saranno ora esaminati per determinare se sono triangoli di bordo • Se non sono triangoli di bordo si cercano dei triangoli adiacenti all’interno della cella di Voronoi per determinare i triangoli di bordo • Nei triangoli di bordo si determineranno i punti transizione come per l’approccio naïve e quindi si determinerà il bordo della tight cell

  18. Costruzione veloce dell’indice • Per la costruzione delle LooseCell l’algoritmo è uguale, tranne nel caso dei triangoli che non sono di bordo per il quale vengono scelti i triangoli, vicini al triangolo non di bordo meno prossimi al sito

  19. Surface Index R-Tree • Gli indici TSI e LSI hanno una complessità tale da non poter essere memorizzate in strutture ad albero classiche come gli R-Tree • Vengono allora create delle strutture ad albero basate su R-Tree che possano incorporare questi indici, tali struttu-re sono chiamate SurfaceIndexR-Tree

  20. Surface Index R-Tree • Questa struttura permette di memorizzare nei nodi foglia, oltre al sito, anche i puntatori alla lista dei vertici delle TC e LC. • L’algoritmo oltre ai puntatori memorizza la lista dei siti vicini, il cui numero è costante e limitato per tutti i siti

  21. Surface Index R-Tree • Il SIR-tree è costruito una sola volta per ogni luogo e permette le operazioni di inserimento, cancellazione e aggiornamento locate p in SIR, find out the loose cell LC(r) containing p; p.neighbor ←LC(r)’s neighbor; compute TC(p) and LC (p); for each site pi in p.neighbor update LC(pj)’s edges according to TC(p); update TC(pj)’s edges according to LC(p); insert p into SIR; return SIR;

  22. Surface Nearest Neighbor Query • Ricerca in profondità nel SIR-Tree del nodo contente il punto di query • Restituzione del generatore della tight cell che contiene q, altrimenti : • Restituzione dei generatori delle loosecell e attraverso il calcolo della Ds più breve si individua il nearestneighbor Trovato q2 in LC(p6),calcolo Ds(q2,p3) e Ds(q2,p6),il sito con minima Ds è NN

  23. Surface k NearestNeighborQuery p←Nearest Neighbor Query(I, q, T); add p to kNN set G; initialize minimum heapH; while(G.size < k) for each neighbor site pi of G; unfoldLC(G) U LC(pi) tocomputesurfacedistance; add pi to H; end for p←deheap H; add p to G; end while; returnG;

  24. sK Nearest Neighbor Query • Aggiunta delle loosecell di tutti i vicini del sito più prossimo determinato come nella NearestNeighborQueryalla coda di siti candidati • Calcoliamo le distanze superficiale di ogni sito, tra il sito candidato e il punto di query nell’area defintita dall’unione della loosecell del sito con l’area formata dalle loosecell dei siti inseriti nella serie dei vicini prossimi già determinati (G) • Il sito con distanza minima sarà indicato come successivo vicino e inserito nella serie G, per ogni iterazione dell’algoritmo fino al raggiungimento dei k desiderati

  25. Analisi delle Prestazioni • Si è confrontato l’algoritmo proposto con quelli preesistenti per le kNNQuery su un database geospaziale standard fornito dal U.S.GeologicalSurvey su queste due superfici

  26. Efficienza • Come si deduce dai grafici l’algoritmo proposto è più veloce e meno oneroso in termini di operazioni di I/O d è la densità di siti sul modello della superficie

  27. Accuratezza • Dai grafici si deduce che l’algoritmo proposto anche all’aumentare di k rimane preciso al pari del CH Algorithm

  28. Conclusioni • Si può concludere che questo algoritmo garantisce: • Risposte precise e rapide alle skNNquery • Effettivo percorso più breve di superficie • Risultati incrementali

  29. GRAZIE PER L’ATTENZIONE!!

More Related