Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          1
Weixia (Bonnie) Huang*, Bruce Herr* & Ben Markines+
*School of Library and Information Science
+Department of Computer Science
Indiana University, Bloomington, IN
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          2
Project Details
Investigators: Katy Börner, Albert-Laszlo Barabasi, Santiago Schnell,
Alessandro Vespignani & Stanley Wasserman, Eric Wernert
Software Team:Lead: Weixia (Bonnie) Huang
 Developers: Bruce Herr, Ben Markines, Santo Fortunato, RamyaSabbineni, Vivek S. Thakre, Russell Duhon & Cesar Hidalgo
Goal: Develop a large-scale network analysis, modeling and visualization toolkitfor physics, biomedical, and social science research.
Amount:$1,120,926, NSF IIS-0513650 award
Duration: Sept. 2005 - Aug. 2008
borner
barabasi
schnell_l
alexv_l
Stan_Wasserman
wernert
Wexia_Bonnie_Huang
ben_m
santo
cesar
419499229_m
vivek-thakre
ramya-sabbineni
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          3
Project Details cont.
NWB Advisory Board:
James Hendler (Semantic Web)  http://www.cs.umd.edu/~hendler/
Jason Leigh (CI)  http://www.evl.uic.edu/spiff/
Neo Martinez (Biology)  http://online.sfsu.edu/~webhead/
Michael Macy, Cornell University (Sociology)http://www.soc.cornell.edu/faculty/macy.shtml
Ulrik Brandes (Graph Theory)  http://www.inf.uni-konstanz.de/~brandes/
Mark Gerstein, Yale University (Bioinformatics)  http://bioinfo.mbb.yale.edu/
Tom Snijders, University of Groningen  http://stat.gamma.rug.nl/snijders/
neophoto
Macy
The image “http://www.nature.com/nature/debates/e-access/images/Gerstein.jpg” cannot be displayed, because it contains errors.
leigh
north
snidjers
hendler
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          4
Major Deliverables
Network Workbench (NWB) Tool
oA network analysis, modeling, and visualization toolkit for physics,biomedical, and social science research.
oCan install and run on multiple Operating Systems.
oUses Cyberinfrastructure Shell Framework underneath.
NWB Community Wiki
oA place for users of the NWB Tool, the Cyberinfrastructure Shell (CIShell),or any other CIShell-based program to request, obtain, contribute, andshare algorithms and datasets.
oAll algorithms and datasets that are available via the NWB Tool have beenwell documented in the Community Wiki.
Cyberinfrastructure Shell (CIShell)
oAn open source, software framework for the integration and utilization ofdatasets, algorithms, tools, and computing resources.
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          5
Integrating and Implementing Algorithms
Modeling and Network Generation
Random Network Model
Random
Preferential Attachment Algorithms
Barabasi-Albert Model
Dorogovtsev-Mendes-Samukhin
Fitness
Vertices/edges deletion
Copying strategy
Finite vertex capacity
TARL
 
Rewiring algorithms
Rewiring based on degree distribution
Watts Strogatz Small World Model
Peer-to-Peer Models
Structured
CAN Model
Chord Model
Unstructured
PRU Model
Hypergrid Model
Statistical Measurement
Edge/Node level
node degree
BC value of nodes/edges
Max flow edge
Hub/Authority value for nodes
Distribution of node distances (Hop plot)
Local (directed and weighted versions)
Clustering Coefficient (Watts Strogatz)
Clustering Coefficient (Newman)
k-Core Count
Distributions (Plot and gamma, and R^2)
Degree Distributions (in, out, total)  (Directed/TotalDegree Distribution)
Degree Correlations (in-out, out-out, out-in, in-in, total-total)
Clustering Coefficient over k
Coherence for weighted graphs
Distribution of weights
Probability of degree distribution
Global
Density
Square of Adjacency Matrix
Giant Component
Strongly Connected Component
Betweenness Centrality
Diameter
Shortest Path = Geodesic Distance
Average Path Length
Motif Identification
Page Rank
Closeness centrality
Reach centrality
Eigenvector centrality
Minimum Spanning Tree
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          6
More Algorithms
Searching on Networks
Search
k Random-Walk Search
Depth First Search
p-rand Breadth-First Search
P2P
CAN Search
Chord Search
Epidemics Spreading
SIR
SIS
Clustering on Networks
Based on Attributes
Hierarchical Clustering
Single Link
Complete Link
Average Link
Ward's Algorithm
 
Based on Network Structure
Newman Girvan
Clauset-Newman-Moore
Newman
Cecconi-Parisi
Simulated annealing of modularity
Caldarelli
Weak Component Clustering
vanDongen (random walk)
Cfinder (Clique percolation method)
Reichardt, Bornholdt (q-potts model)
Graph Matching On Networks
Simple Match
Similarity Flooding
ABSURDIST
Visualization of Networks
Distribution
Scatterplot
Histogram
Geospatial
Circle layout
Grid-based
Dendrogram
Treemap
Hyperbolic tree
Radial Tree
Sparse Matrix Visualization
Kamada-Kawaii
Fruchterman-Rheingold
Orthogonal Layout
k-core visualization
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          7
Outline
oDemonstrate the functions provided by thecurrent version of NWB Tool
oPresent the underlying technologies supportingthose functions – NWB/CIShell architecture
oHighlight the features in NWB Community Wiki
oDiscuss the future work
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          8
NWB Tool Major Deliverables
Major features in v0.2.0 Release
oInstalls and runs on Windows and Linux x86.
oProvides over 40 modeling, analysis and visualization algorithms. Half ofthem are written in Fortran, others in Java.
oProvides several sample datasets including 9-11 terrorist network, NetSci06conference attendee network, etc.
oSupports the loading, processing and saving of four basic file formats:
GraphML, Pajek .net, XGMML and NWB
oIntegrates a 2D plotting tool -- xmgrace on Linux.
New features in the coming v0.3.0 Release (Dec 21st, 2006)
oSupports to run on Mac OSX.
oMakes xmgrace work on windows
oImplements Scheduler GUI
oAdds new algorithms: TARL, Pathfinder Network Scaling, etc.
oImproves existing modeling, analysis, and visualization algorithms.
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          9
NWB Tool – Algorithms (Implemented)
Category
Algorithm
Language
Preprocessing
Directory Hierarchy Reader
JAVA
Modeling
 
 
 
 
 
 
Erdös-Rényi Random
FORTRAN
Barabási-Albert Scale-Free
FORTRAN
Watts-Strogatz Small World
FORTRAN
Chord
JAVA
CAN
JAVA
Hypergrid
JAVA
PRU
JAVA
Visualization
 
 
 
 
 
 
 
 
Tree Map
JAVA
Tree Viz
JAVA
Radial Tree / Graph
JAVA
Kamada-Kawai
JAVA
Force Directed
JAVA
Spring
JAVA
Fruchterman-Reingold
JAVA
Circular
JAVA
Parallel Coordinates (demo)
JAVA
Tool
XMGrace
 
Analysis Algorithm
Language
Attack Tolerance
JAVA
Error Tolerance
JAVA
Betweenness Centrality
JAVA
Site Betweenness
FORTRAN
Average Shortest Path
FORTRAN
Connected Components
FORTRAN
Diameter
FORTRAN
Page Rank
FORTRAN
Shortest Path Distribution
FORTRAN
Watts-Strogatz Clustering Coefficient
FORTRAN
Watts-Strogatz Clustering Coefficient Versus Degree
FORTRAN
Directed k-Nearest Neighbor
FORTRAN
Undirected k-Nearest Neighbor
FORTRAN
Indegree Distribution
FORTRAN
Outdegree Distribution
FORTRAN
Node Indegree
FORTRAN
Node Outdegree
FORTRAN
One-point Degree Correlations
FORTRAN
Undirected Degree Distribution
FORTRAN
Node Degree
FORTRAN
k Random-Walk Search
JAVA
Random Breadth First Search
JAVA
CAN Search
JAVA
Chord Search
JAVA
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          10
NWB Tool: Demo
screen-shot_final
Load Data
List of Data Models
Scheduler
Open Text Files
Console
Visualize Data
Select Preferences
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          11
NWB Tool – Data Formats
Converters and Conversion Services Between Various Data Formats
conversionGraph_mono
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          12
Three User Groups
Application Users
oScientists in the natural and social sciences (physics, biology,chemistry, psychology, sociology, etc.)
oTheir needs -- want to find the best datasets and the mosteffective algorithms to conduct their research.
oProblem – too many algorithms. Finding a correctly working pieceof code is challenging. Frequently, not only one but a sequence ofdifferent algorithms needs to be applied to load, parse, clean,mine, analyze, model, visualize, and print data. Today, there is noeasy way to extend a tool by adding new algorithms as needed orto customize a tool so that it exactly fits the needs of a specificuser (group).
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          13
Three User Groups (cont.)
Application Designers
oComputer scientists or application users that developed theapplications and tools we use today.
oThey usually start by developing applications/tools that meet theirown needs, and then generalize them to satisfy the requirements oftheir research community.
oChallenge -- not only need to take care of the software architecture,the GUI design, the development of many basic components andfunctions, but also play the role of algorithm developers.
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          14
Three User Groups (cont.)
Algorithm Developers
oComputer scientists, statisticians and other researchers
oThey look for opportunities to disseminate their work and test thepractical utilities of their algorithms.
oChallenge -- the integration of a dataset or algorithm into an existingapplication or tool requires a deep understanding of the architecture ofthat application, which is non-trivial.
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          15
OSGi – Technical Details
NWB/CIShell is built upon the Open Services Gateway Initiative (OSGi) Framework.
oA standardized, component oriented, computing environment for networked services.
oAlliance members include IBM (Eclipse), Sun, Intel, Oracle, Motorola, NEC and manyothers.
oHas successfully been used in the industry from high-end servers to embedded mobiledevices for 7 years now.
oWidely adopted in open source realm, especially since Eclipse 3.0 that uses OSGi R4 forits plugin model.
Advantages of Using OSGi
oDirectly use many components provided by OSGi framework, such as service registry
oContribute diverse algorithms to OSGi community -- any CIShell algorithm becomes aservice that can be used in any OSGi-based framework.
oRunning CIShells/tools can connect to each other via exposed CIShell-defined webservices supporting peer-to-peer sharing of data, algorithms, and computing power.
Ideally, CIShell becomes a standard for creating algorithm services in OSGi
developed Tools/CI, e.g., IVC&NWB will be using the CIShell reference GUI
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          16
NWB/CIShell is built upon the Open Services Gateway Initiative(OSGi) Framework
OSGi – Technical Details
10
osgifade
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          17
An Overview of NWB/CIShell Architecture
NWB/CIShell Architecture cont.
10
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          18
An Abstract Definition of Algorithms, Datasets and Converters
Interfaces Layer – Algorithm
1
algorithmDefn
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          19
Basic Algorithm APIs
Interfaces Layer – Algorithm cont.
1
public interface AlgorithmFactory {
      public   MetaTypeProvider   createParameters(Data[] data);
      public   Algorithm   createAlgorithm( Data[] data, Dictionary parameters,
                                         CIShellContext context);
}
public interface Algorithm {
      public Data[] execute();
}
Advanced Algorithm APIs (optional)
DataValidator and ProgressTrackable Interfaces
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          20
14
Basic Algorithm APIs
Templates
public interface AlgorithmFactory {
      public   MetaTypeProvider   createParameters(Data[] data);
      public   Algorithm   createAlgorithm( Data[] data, Dictionary parameters,
                                         CIShellContext context);
}
public interface Algorithm {
      public Data[] execute();
}
Advanced Algorithm APIs (optional)
DataValidator and ProgressTrackable Interfaces
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          21
oPreferences Service
oLog Service
oData Conversion Service
oGUI Builder Service
Interfaces Layer – Basic Services
2
Basic Services
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          22
oScheduler Service
oData Manager Service
Interfaces Layer – Application Services
3
Application Services
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          23
oCIShellContext
oData
Interfaces Layer – Other Components
4
Other Framework Components
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          24
Services Layer – Basic Services
5
oPreferences Service
oLog Service
oData Conversion Service
oGUI Builder Service
Basic Services
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          25
oScheduler Service
oData Manager Service
Services Layer – Application Service
6
Application Services
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          26
oCIShellContext - LocalCIShellContext
oData - BasicData
Services Layer – Other Components
7
Other Framework Components
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          27
Application Solutions
11
Reference GUI (using Eclipse RCP)
oFramework View
oData Manager View
oConsole(log) View
oScheduler View
oMenu Manager
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          28
Other application solutions
Application Solutions cont.
8
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          29
NWB Tool
oAnalyze, visualize and model network/graph
oSupport most popular data formats and data conversion among them
oServe three communities with different practices
Applications
12
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          30
Biological Networks Portal
oUse Web front-end solution
oFor educational purpose
Applications cont.
10
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          31
Algorithm Developers Need to Know
For Algorithm Developers (Java-based)
oMust implement CIShell Algorithm APIs
oKnow how to use Basic Serivces APIs, Application Serivces APIs,CIShellContext, and Data APIs, but don’t need to take care of thedetail implementations of those services or components.
Need to change diagram and show templates
15
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          32
Component Level
oUsing OSGi service implementations from different vendors
oEach service/component can have more than one implementations
Application Designers Need to Know
16
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          33
Application Designers Need to Know
Framework Level
oUse all implementations of algorithms and converters
oUse all implementations on the service layer
oConcentrate on application solutions
oUse or refer to the reference implementations of an application
17
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          34
oGet the most efficient algorithm implementations
oGet as many algorithms as needed
oHave tools running on multiple platforms and various application solutions
oDon’t worry about the match between the data format of a dataset vs.algorithm input
Application Users
10
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          35
Community Wiki
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          36
Community Wiki cont.
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          37
Future Work
Add features to serve communities including Physics,Biology, Social Science, and Scientometrics.
oIntegrate classic datasets
oSupport the most popular data formats for biology and socialscience research.
oDevelop the converters to bridge those formats to the currentformats supported by NWB tool.
oDesign and deliver better visualization algorithms and modularity
oDevelop components to connect and query SDB
oCustomize Menu – Users can re-organize the algorithms for theirneeds
oContinue integrating best algorithm implementations
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          38
Acknowledgement
     We would like to acknowledge the NWB team members that made majorcontributions to the NWB tool and/or Community Wiki:
     Santo Fortunato, Katy Börner, Alex Vespignani, Soma Sanyal,Ramya Sabbineni, Vivek S. Thakre, Russell Duhon, Elisha Hardy,and Shashikant Penumarthy.We are working with Albert-Laszlo Barabasi, Cesar Hidalgo, StanleyWasserman, and Ann McCranie to refine the requirements and plan newfeatures to meet the needs of biologists and social scientists.
Network Workbench (http://nwb.slis.indiana.edu), 2006.12.11                                                                                                                                                                          39
Comments & Questions
Thank you