optimized graph search using multi-level graph clustering
DESCRIPTION
Optimized Graph Search Using Multi-Level Graph Clustering. Rahul Kala, Department of Information Technology Indian Institute of Information Technology and Management Gwalior http://students.iiitm.ac.in/~ipg_200545/ [email protected], [email protected]. - PowerPoint PPT PresentationTRANSCRIPT
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior
Optimized Graph Search Optimized Graph Search Using Multi-Level Graph Using Multi-Level Graph Clustering Clustering
Rahul Kala,
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior
http://students.iiitm.ac.in/~ipg_200545/
Kala, Rahul, Shukla, Anupam & Tiwari, Ritu (2009) Optimized Graph Search using Multi Level Graph Clustering, Proceedings of the Springer International Conference on Contemporary Computing, IC3'09, pp 103-114, Noida, India
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Bread
th F
irst S
earch
Depth First S
earch
Iterative Deepening Search
A* Algorithm
Heuristic Search Algorithm
Graph Searching Algorithms
Multi Neuron Heuristic Search
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
The Basic IdeaThe Basic Idea
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Multi Level Graph Multi Level Graph Clustering - IClustering - I
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Multi Level Graph Multi Level Graph Clustering - IIClustering - II
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Multi Level Graph Multi Level Graph Clustering - IIIClustering - III
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Multi Level Graph Clustering Multi Level Graph Clustering - IV- IV
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Multi Level Graph Multi Level Graph Clustering - VClustering - V
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Clustering AlgorithmClustering Algorithm g ← original graph
for i = 1 to A g ← makeCluster(g)
Is there change in g
NoNo
YesYes
break
Add g to graphs
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Making ClustersMaking Clusters
1 2
3 4
5
78
6
9 5
10
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Making Clusters AlgorithmMaking Clusters AlgorithmMake Clusters()
Step1: While more clusters are possible
Step2: c ← getNextCluster()
Step3: for each vertex v in c
Step4: Delete v from graph and delete all edges from/to it
Step5: Add a new unique vertex v2
Step6: Add edges from/to v2 that were deleted from the graph
Step7: Add information of cluster v2 to set of clusters in the particular level
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Star VertexStar Vertex
Star Vertex
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Selecting Nodes of ClusterSelecting Nodes of ClustergetNextCluster()
Step1: Find the vertex v in graph with maximum edges
Step2: If the maximum edges are less than α then return null
Step3: c ← all vertices that are at a maximum distance of 2 units away from v
Step4: Sort c in order of decreasing number of edges of vertices
Step5: Select any 3 vertices v1, v2, v3 in c such that all 3 vertices are connected to β common vertices
Step6: c2 ← all vertices in c that are connected to v1 and v2 and v3
Step7: Add all vertices in c to c2 that are connected to at least 4 vertices already present in c2
Step8: Return c2
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior
Graph SearchGraph Search
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Point SearchPoint SearchSource
Goal
Source
Goal
Source
Goal
Source and Goal
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Point AlgorithmPoint Algorithm
Level ← 0
While there are graphs in current level
Is source member of any cluster of this
level
Source ← Cluster number where it was
found
Is goal member of any cluster of
this level
Goal ← Cluster number where it
was found
Add source, destination to point
set
Level ← Level + 1
YesYes
YesYes
NoNo
NoNo
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Search AlgorithmSearch AlgorithmSource
Goal
Source
Goal
Source
Goal
Source and Goal
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Search AlgorithmSearch AlgorithmSearch()
Step1: Solution ← null
Step2: For each (source, destination) in point set
Step3: Solution2 ← start + all vertices in solution + destination
Step4: If any vertex in solution2 is a cluster of the higher level
Step5: Replace that vertex with the star vertex of that cluster
Step6: Solution ← null
Step7: For all adjacent vertices (v1,v2) in Solution2, taken in order
Step8: Solution ← Solution + bfs(current level graph,v1,v2) – v2
Step9: Solution ← Solution + destination
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Adding and Modifying Adding and Modifying NodesNodes
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
ApplicatioApplicationsns
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Analogy in Social Analogy in Social NetworkingNetworking
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
ComparisonsComparisons
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
ResultsResults
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior
ConclusioConclusionsns
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Future ScopeFuture ScopeValidation against actual dataWeighted GraphsClustering CriterionTradeoff between loss of result
quality with timeType of graphs
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
More interesting More interesting algorithms at:algorithms at:
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
ReferencesReferences1. Anders Karl-Heinrich, ‘A Hierarchical Graph-Clustering Approach to find
Groups of Objects’, In ICA Commission on Map Generalization, 5th Workshop on Progress in Automated Map Generalization (2003)
2. Arcaute Esteban, Chen Ning, Kumar Ravi, Liben-Nowell David, Mahdian Mohammad, Nazerzadeh Hamid, Xu Ying, ‘Deterministic Decentralized Search in Random Graphs’, Proceedings of the 5th Workshop on Algorithms and Models for the Web-Graph, (2007)
3. Brandes Ulrik, Gaertler Marco, Wagner Dorothea, ‘Experiments on Graph Clustering Algorithms’, In Proceedings of the 11th Annual European Symposium on Algorithms. Lecture Notes in Computer Science, vol. 2832. 568--579 (2003)
4. Craswell Nick, Szummer Martin, ‘Random Walks on the Click Graph’, SIGIR Conf Research and Development in Information Retrieval, 239—246 (2007)
5. Goldberg Andrew V., Harrelson Chris, ‘Computing the Shortest Path: A* Search Meets Graph Theory’, In Proceedings of SODA, 156—165 (2005)
6. Gunter Simon, Bunke Horst, ‘Validation indices for graph clustering’, Pattern Recognition Letters 24, 1107--1113 (2003)
7. He Hao, Wang Haixun, Yang Jun, Yu Philip S,’ BLINKS: Ranked Keyword Searches on Graphs’, in the ACM International Conference on Management of Data (SIGMOD), Beijing, China.(2007)
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
8. Hlaoui Adel, Wang Shengrui, ‘A Graph Clustering Algorithm with Applications to Content-Based Image Retrieval’, Proceedings of the Second International Conference on Machine Learning and Cybernetics, Xi’an, (2003)
9. Kacholia Varun, Pandit Shashank, Chakrabarti Soumen, Sudarshan S., Desai Rushi, Karambelkar Hrishikesh, ‘Bidirectional Expansion For Keyword Search on Graph Databases’ ACM Proceedings of the 31st international conference on Very large data bases Trondheim, Norway (2005)
10. Najork Marc, Wiener Janet L., ‘Breadth-First Search Crawling Yields High-Quality Pages’, ACM Proceedings of the 10th international conference on World Wide Web Hong Kong, (2001)
11. Rattigan Matthew J, Maier Marc, Jensen David, ‘Graph Clustering with Network Structure Indices’, ACM Proceedings of the 24th international conference on Machine learning Corvalis, Oregon, (2007)
12. Tadikonda Satish K., Sonka Milan, Collins Steve M, ‘Efficient Coronary Border Detection Using Heuristic Graph Searching’ ieeexplore
13. Wang Yonggu, Li Xiaojuan, ‘Social Network Analysis of Interaction in Online Learning Communities’ ICALT 2007. Seventh IEEE International Conference on Advanced Learning Technologies, (2007)
14. Yushi Jing, Shumeet Baluja, ‘PageRank for Product Image Search’, WWW 2008 / Refereed Track: Rich Media, (2008)
15. Zhou Rong, Hansen Eric A, ‘Sparse-Memory Graph Search’, 18th International Joint Conference on Artificial Intelligence, Acapulco, Mexico (2003)
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August, 2009
Department of Information Technology
Indian Institute of Information Technology and Management Gwalior
Thank YouThank You