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/ rahulkalaiiitm@yahoo.co.in, rkala@students.iiitm.ac.in
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,

r B

d ea

Mu l hti Ne uro rc nH ea eur S i st i t c Se rs i ar c F h Iterative Deepening Search t
Graph Searching Algorithms

A* Al go ri t

hm

ch ar Se st ir F th ep D
IC3’09 - 18th August,

Heuristic Search Algorithm
Department of Information Technology Indian Institute of Information Technology and Management Gwalior

The Basic Idea

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Multi Level Graph Clustering - I

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Multi Level Graph Clustering - II

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Multi Level Graph Clustering - III

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Multi Level Graph Clustering - IV

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Multi Level Graph Clustering - V

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Clustering Algorithm
g ← original graph

for i = 1 to A

g ← makeCluster(g)

Add g to graphs Yes

Is there change in g

No break

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Making Clusters
1 2 5 6 3 4 7

8

9

5 10

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Making Clusters Algorithm
Make 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,

Star Vertex

Star Vertex

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Selecting Nodes of Cluster
getNextCluster() 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,

Graph Search

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Source

Point Search
Source Goal

Goal Goal Source

Source and Goal
Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Point Algorithm
Level ← 0
While there are graphs in current level
Is source member of any cluster of this level

Yes

Source ← Cluster number where it was found

No
Is goal member of any cluster of this level

Yes

Goal ← Cluster number where it was found

No
Level ← Level + 1 Add source, destination to point set

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Source

Search Algorithm
Source Goal

Goal Goal Source

Source and Goal
Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Search Algorithm
Search() 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,

Adding and Modifying Nodes

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Applicatio ns

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Analogy in Social Networking

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Comparisons

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Results

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Conclusio ns
Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Future Scope
Validation

against actual data Weighted Graphs Clustering Criterion Tradeoff between loss of result quality with time Type of graphs

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

More interesting algorithms at:

Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

References
1. 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,

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 HighQuality 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,

Thank You
Department of Information Technology Indian Institute of Information Technology and Management Gwalior IC3’09 - 18th August,

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.