Network Metrics, Planar Graphs, and Software Tools. Based on materials by Lala Adamic, UMichigan



Similar documents
A comparative study of social network analysis tools

Graph/Network Visualization

An Introduction to APGL

Practical Graph Mining with R. 5. Link Analysis

Social Media Mining. Graph Essentials

Link Prediction in Social Networks

Tools and Techniques for Social Network Analysis

An Introduction to KeyLines and Network Visualization

Graph Theory Problems and Solutions

Gephi Tutorial Quick Start

Recent Large Graph Visualization Tools : A Review

Midterm Practice Problems

Network-Based Tools for the Visualization and Analysis of Domain Models

CS311H. Prof: Peter Stone. Department of Computer Science The University of Texas at Austin

Gephi Tutorial Visualization

V. Adamchik 1. Graph Theory. Victor Adamchik. Fall of 2005

Visualization with OpenDX

An Open Framework for Reverse Engineering Graph Data Visualization. Alexandru C. Telea Eindhoven University of Technology The Netherlands.

How To Draw In Autocad

Graph Theory and Complex Networks: An Introduction. Chapter 08: Computer networks

Open Source Software Developer and Project Networks

Graph Visualization Tools: A Comparative Analysis

Graph Theory and Complex Networks: An Introduction. Chapter 06: Network analysis

Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

Social Network Analysis: Visualization Tools

Subgraph Patterns: Network Motifs and Graphlets. Pedro Ribeiro

SOFTWARE TESTING TRAINING COURSES CONTENTS

Analysis of Algorithms, I

Evaluating Software Products - A Case Study

An overview of Software Applications for Social Network Analysis

Protein Protein Interaction Networks

Lecture 7: NP-Complete Problems

136 CHAPTER 4. INDUCTION, GRAPHS AND TREES

Greedy Routing on Hidden Metric Spaces as a Foundation of Scalable Routing Architectures

Information Visualization on the Base of Hierarchical Graph Models

Practical statistical network analysis (with R and igraph)

Part 2: Community Detection

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

Data Structures and Algorithms Written Examination

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

So today we shall continue our discussion on the search engines and web crawlers. (Refer Slide Time: 01:02)

JustClust User Manual

Graph Theory and Complex Networks: An Introduction. Chapter 06: Network analysis. Contents. Introduction. Maarten van Steen. Version: April 28, 2014

Network Algorithms for Homeland Security

A discussion of Statistical Mechanics of Complex Networks P. Part I

System Interconnect Architectures. Goals and Analysis. Network Properties and Routing. Terminology - 2. Terminology - 1

NakeDB: Database Schema Visualization

RuleBender Tutorial

Analysis of an Outpatient Consultation Network in a Veterans Administration Health Care System Hospital.

Distributed Computing over Communication Networks: Topology. (with an excursion to P2P)

Course on Social Network Analysis Graphs and Networks

Seminar. Path planning using Voronoi diagrams and B-Splines. Stefano Martina

Silverlight for Windows Embedded Graphics and Rendering Pipeline 1

Security visualisation

Network/Graph Theory. What is a Network? What is network theory? Graph-based representations. Friendship Network. What makes a problem graph-like?

Visualizing a Neo4j Graph Database with KeyLines

Autodesk Fusion 360: Assemblies. Overview

Introduction to Graph Theory

A Business Process Services Portal

Network VisualizationS

Option 1: empirical network analysis. Task: find data, analyze data (and visualize it), then interpret.

1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)

Why? A central concept in Computer Science. Algorithms are ubiquitous.

UGENE Quick Start Guide

Visual Analysis Tool for Bipartite Networks

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

! E6893 Big Data Analytics Lecture 10:! Linked Big Data Graph Computing (II)

Visualizing an OrientDB Graph Database with KeyLines

Oracle Database 10g: Building GIS Applications Using the Oracle Spatial Network Data Model. An Oracle Technical White Paper May 2005

NodeXL for Network analysis Demo/hands-on at NICAR 2012, St Louis, Feb 24. Peter Aldhous, San Francisco Bureau Chief.

A Tutorial on dynamic networks. By Clement Levallois, Erasmus University Rotterdam

Approximation Algorithms

Graph Theory Lecture 3: Sum of Degrees Formulas, Planar Graphs, and Euler s Theorem Spring 2014 Morgan Schreffler Office: POT 902

Complex Networks Analysis: Clustering Methods

Self-adaptive e-learning Website for Mathematics

Analyzing (Social Media) Networks with NodeXL

A Fast Algorithm For Finding Hamilton Cycles

UCINET Quick Start Guide

Solid Edge ST3 Advances the Future of 3D Design

JMulTi/JStatCom - A Data Analysis Toolkit for End-users and Developers

MayaVi: A free tool for CFD data visualization

JavaFX Session Agenda

Software for time series visualization

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

D1.1 Service Discovery system: Load balancing mechanisms

Small Maximal Independent Sets and Faster Exact Graph Coloring

Visualizing Large, Complex Data

Transcription:

Network Metrics, Planar Graphs, and Software Tools Based on materials by Lala Adamic, UMichigan

Network Metrics: Bowtie Model of the Web n The Web is a directed graph: n webpages link to other webpages n The connected components tell us what set of pages can be reached from any other just by surfing (no jumping around by typing in a URL or using a search engine) n Broder et al. 1999 crawl of over 200 million pages and 1.5 billion links. n SCC 27.5% n IN and OUT 21.5% n Tendrils and tubes 21.5% n Disconnected 8% IN tendrils SCC OUT tubes disconnected components

Network Metrics: Size of Giant Component n if the largest component encompasses a significant fraction of the graph, it is called the giant component

Characterizing Networks: How far apart are things?

Network Metrics: Shortest Paths n Shortest path (also called a geodesic path) n The shortest sequence of links connecting two nodes n Not always unique B n A and C are connected by 2 shortest paths n A E B - C n A E D - C A 1 2 E 2 3 D 3 C n Diameter: the largest geodesic distance in the graph n The distance between A and C is the maximum for the graph: 3 n Caution: some people use the term diameter to be the average shortest path distance, in this class we will use it only to refer to the maximal distance

Characterizing Networks: How Dense Are They?

Network Metrics: Graph Density n Of the connections that may exist between n nodes n directed graph e max = n*(n-1) each of the n nodes can connect to (n-1) other nodes n undirected graph e max = n*(n-1)/2 since edges are undirected, count each one only once n What fraction are present? n density = e/ e max n For example, out of 12 possible connections, this graph has 7, giving it a density of 7/12 = 0.583 n Would this measure be useful for comparing networks of different sizes (different numbers of nodes)?

Bipartite (Two-mode) Networks n edges occur only between two groups of nodes, not within those groups n for example, we may have individuals and events n directors and boards of directors n customers and the items they purchase n metabolites and the reactions they participate in

Going From A Bipartite To A One-mode Graph n Two-mode network group 1 n One mode projection n two nodes from the first group are connected if they link to the same node in the second group n some loss of information n naturally high occurrence of cliques group 2

Bi-cliques (Cliques In Bipartite Graphs) n K m,n is the complete bipartite graph with m and n vertices of the two different types n K 3,3 maps to the utility graph n Is there a way to connect three utilities, e.g. gas, water, electricity to three houses without having any of the pipes cross? Utility graph K 3,3

Planar graphs n A graph is planar if it can be drawn on a plane without any edges crossing

Cliques and complete graphs n K n is the complete graph (clique) with K vertices n each vertex is connected to every other vertex n there are n*(n-1)/2 undirected edges K 3 K 5 K 8

Edge contractions defined n A finite graph G is planar if and only if it has no subgraph that is homeomorphic or edge-contractible to the complete graph in five vertices (K 5 ) or the complete bipartite graph K 3, 3. (Kuratowski's Theorem)

Peterson graph n Example of using edge contractions to show a graph is not planar

#s of Planar Graphs of Different Sizes 1:1 2:2 3:4 4:11 Every planar graph has a straight line embedding

Trees n Trees are undirected graphs that contain no cycles

Examples of Trees n In nature n Man made n Computer science n Network analysis

NETWORK VISUALIZATION AND ANALYSIS SOFTWARE

Overview of Network Analysis Tools Pajek network analysis and visualization, menu driven, suitable for large networks platforms: Windows (on linux via Wine) download Netlogo agent based modeling recently added network modeling capabilities platforms: any (Java) download GUESS network analysis and visualization, extensible, script-driven (jython) platforms: any (Java) download Other software tools that we will not be using but that you may find useful: visualization and analysis: UCInet - user friendly social network visualization and analysis software (suitable smaller networks) igraph - if you are familiar with R, you can use igraph as a module to analyze or create large networks, or you can directly use the C functions Jung - comprehensive Java library of network analysis, creation and visualization routines Graph package for Matlab (untested?) - if Matlab is the environment you are most comfortable in, here are some basic routines SIENA - for p* models and longitudinal analysis SNA package for R - all sorts of analysis + heavy duty stats to boot NetworkX - python based free package for analysis of large graphs InfoVis Cyberinfrastructure - large agglomeration of network analysis tools/routines, partly menu driven visualization only: GraphViz - open source network visualization software (can handle large/specialized networks) TouchGraph - need to quickly create an interactive visualization for the web? yed - free, graph visualization and editing software specialized: fast community finding algorithm motif profiles CLAIR library - NLP and IR library (Perl Based) includes network analysis routines finally: INSNA long list of SNA packages

Common Tools n Pajek: extensive menu-driven functionality, including many, many network metrics and manipulations n but not extensible n Guess: extensible, scriptable tool of exploratory data analysis, but more limited selection of built-in methods compared to Pajek n NetLogo: general agent based simulation platform with excellent network modeling support n igraph: libraries can be accessed through R or python. Routines scale to millions of nodes.

Other Tools: Visualization Tool: gephi n http://gephi.org n primarily for visualization, has some nice touches

Visualization Tool: GraphViz n Takes descriptions of graphs in simple text languages n Outputs images in useful formats n Options for shapes and colors n Standalone or use as a library n dot: hierarchical or layered drawings of directed graphs, by avoiding edge crossings and reducing edge length n neato (Kamada-Kawai) and fdp (Fruchterman-Reinhold with heuristics to handle larger graphs) n twopi radial layout n circo circular layout http://www.graphviz.org/

GraphViz: dot language digraph G { ranksep=4 nodesep=0.1 size="8,11" ARCH531_20061 [label="arch531",style=bold,color=yellow,style=filled] ARCH531_20071 [label="arch531",gstyle=bold,color=yellow,style=filled] BIT512_20071 [label="bit512",gstyle=bold,color=yellow,style=filled] BIT513_20071 [label="bit513",gstyle=bold,color=yellow,style=filled] BIT646_20064 [label="bit646",gstyle=bold,color=yellow,style=filled] BIT648_20064 [label="bit648",gstyle=bold,color=yellow,style=filled] DESCI502_20071 [label="desci502",gstyle=bold,color=yellow,style=filled] ECON500_20064 [label="econ500",gstyle=bold,color=yellow,style=filled] SI791_20064->SI549_20064[weight=2,color=slategray,style="setlinewidth(4)"]SI791_20064- >SI596_20071[weight=5,color=slategray,style=bold,style="setlinewidth(10)"]SI791_20064- >SI616_20071[weight=2,color=slategray,style=bold,style="setlinewidth(4)"]SI791_20064- >SI702_20071[weight=2,color=slategray,style=bold,style="setlinewidth(4)"]SI791_20064- >SI719_20071[weight=2,color=slategray,style=bold,style="setlinewidth(4)"]

Dot (GraphViz)

Neato (Graphviz)

Other visualization tools: Walrus n n n n developed at CAIDA available under the GNU GPL. best suited to visualizing moderately sized graphs that are nearly trees. A graph with a few hundred thousand nodes and only a slightly greater number of links is likely to be comfortable to work with. Java-based Implemented Features n rendering at a guaranteed frame rate regardless of graph size n coloring nodes and links with a fixed color, or by RGB values stored in attributes n labeling nodes n picking nodes to examine attribute values n displaying a subset of nodes or links based on a user-supplied boolean attribute n interactive pruning of the graph to temporarily reduce clutter and occlusion n zooming in and out Source: CAIDA, http://www.caida.org/tools/visualization/walrus/

Visualization Tools: yed - JavaTM Graph Editor http://www.yworks.com/en/products_yed_about.htm (good primarily for layouts, maybe free)

yed and 26,000 nodes (takes a few seconds)

Visualization Tools: Prefuse n (free) user interface toolkit for interactive information visualization n built in Java using Java2D graphics library n data structures and algorithms n pipeline architecture featuring reusable, composable modules n animation and rendering support n architectural techniques for scalability n requires knowledge of Java programming n website: http://prefuse.sourceforge.net/ n CHI paper http://guir.berkeley.edu/pubs/chi2005/prefuse.pdf

Simple prefuse visualizations Source: Prefuse, http://prefuse.sourceforge.net/

Examples of prefuse applications: flow maps A flow map of migration from California from 1995-2000, generated automatically using edge routing but no layout adjustment. n http://graphics.stanford.edu/papers/flow_map_layout/

Examples of prefuse applications: vizster n http://jheer.org/vizster/