Network Workbench (NWB) Tool v0.3.0

Release Notes

December 21st, 2006

 

1.      General Description

The Network Workbench (NWB) tool (v0.3.0 release) is a network analysis, modeling, and visualization toolkit for biomedical, social science, and physics research. It is a standalone desktop application requiring JAVA 1.4+ JRE. The tool installs and runs on Windows, Linux x86, and Mac OS X. 

It is using Cyberinfrastructure Shell (CIShell) v0.3.0 to integrate various datasets and algorithms. Although CIShell is developed using JAVA, it can integrate algorithms developed by other programming languages such as FORTRAN, C, and C++.

2.      Downloading, Installing and Uninstalling

Download the NWB tool v0.3.0 and make sure to save the download as a jar file.

To install the NWB tool, simply double click the jar file, or run the command line java -jar nwb-installer_0.3.0.jar.

To uninstall the NWB tool, go to program (or application) menu, find “Network Workbench” program group, click “Uninstall NWB”. Another option is to go to the directory “nwb_installation_dir/Uninstaller” and double click uninstaller.jar.

3.      What’s New

3.1.   Now Run on Mac OS X: The tool can be installed and run on Mac OS X Power PC and coming soon Mac x86. To make sure that all visualization algorithms using AWT or Swing work properly, it requires Java 1.5.0 release 4 or greater and the "SWT Compatibility Libraries" to be installed on Mac in advance. Please check Apple (http://www.eclipse.org/swt/faq.php#swtawtosx) for details.

3.2.    Invoke XMGrace through the NWB tool on Windows: the tool provides a plugin that can invoke xmgrace --- a WYSIWYG 2D plotting tool to plot analysis results. This plugin works on Windows and Linux. In order for the plugin to work, the tool requires a working installation of the Grace package. To make it run on Windows, it also requires a working installation of Cygwin.

How to Enable XMGrace through the NWB tool on Windows

·        Start cygwin

·        Run “startxwin.bat” from the terminal window, a X Window will pop up.

·        Run the nwb tool v0.3.0 or greater. For any data file with the big "G" icon in the Data Manager window, click Visualization/XMGrace, and an XMGrace window will pop up.

Please refer to XMGrace page at NWB Community Wiki.

3.3.   Improve Visualization Algorithms: All visualization algorithms except the xmgrace plugins and Parallel Coordinates (demo) are developed using Prefuse beta and JUNG libraries. In this release, Force Directed Layout, Tree Map, Radial Tree/Graph, and Tree View are developed based on Prefuse beta library. They can visualize large-scale networks with over ten thousand nodes. Other visualization algorithms developed based on JUNG library have been improved also including the support of zoom in/out.

3.4.   Scheduler: It allows users to monitor the progress of running algorithms and to stop/pause/resume any running algorithms if needed. A scheduler tester algorithm is provided to demonstrate the capabilities of the scheduler.

3.5.   Improve / Add Algorithms:

·        Several new algorithms including TARL (under modeling), Pathfinder Network Scaling (under analysis), and Tree View (under visualization) are included in the v0.3.0 release. 

·        “Seed of random number generator” as one of the input parameters has been added in the Barabási-Albert Scale-Free, Random Graph, and Watts-Strogatz Small World algorithms for generating various networks.

3.6.   New Data Converters: A converter from Prefuse (alpha) Graph to JUNG Graph and a bi-directional converter between Prefuse (beta) Graph and JUNG Graph have been developed and integrated to the tool.

4.      Features

4.1.   File Formats

The tool can load, process, and save four file formats:

·        GraphML (*.xml)

·        XGMML (*.xml)

·        Pajek .NET (*.net)

·        NWB (*.nwb)

      The tool also supports viewing and saving of plain text files generated by algorithms.

      For detailed information about the above file formats, please visit the NWB Community Wiki.

4.2.   Algorithms

The tool provides 44 network analysis, modeling, and visualization algorithms. Half of them are developed using FORTRAN, while the rest of them use JAVA. Detailed algorithm descriptions are available at the NWB Community Wiki. Here is the complete algorithm list in the v0.3.0 release.

 

Category

Algorithm

Language

Preprocessing

Directory Hierarchy Reader

JAVA

Modeling

Random Graph

FORTRAN

 

Barabási-Albert Scale-Free

FORTRAN

 

Watts-Strogatz Small World

FORTRAN

 

Chord

JAVA

 

CAN

JAVA

 

Hypergrid

JAVA

 

PRU

JAVA

 

TARL

JAVA

Analysis

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

 

Pathfinder Network Scaling

JAVA

Visualization

Tree Map

JAVA

 

Tree View

JAVA

 

Radial Tree / Graph (alpha)

JAVA

 

Radial Tree / Graph (beta)

JAVA

 

Force Directed

JAVA

 

Kamada-Kawaii

JAVA

 

Spring

JAVA

 

Fruchterman-Rheingold

JAVA

 

Circular

JAVA

 

Parallel Coordinations (demo)

JAVA

Tool

XMGrace

 

 

                   Table 1: A list of algorithms in the NWB Tool v0.3.0

4.3.   Converters and Conversion Service

The tool provides a set of converters and a conversion service that automatically transforms data from one format to another. When invoked, the conversion service tries to find a chain of converters that can transform the input data format to one that an algorithm can accept. Figure 1 shows the conversion graph supported by the NWB tool v0.3.0 release.

 

      

 

        Figure 1: Conversion Graph in the NWB Tool v0.3.0

4.4.   Other Features

·        Sample Data: The tool provides several sample datasets in nwb_installation_dir/sampledata/Network.

·        References and Documentations of Algorithms: When a user selects an algorithm from the menu, the acknowledgement will appear in the console. The acknowledgement information contains the original authors of the algorithm, the developers, the integrators, a reference, and the URL to the reference if available. Furthermore, the acknowledgement includes a URL to the algorithm description at the NWB community wiki website at https://nwb.slis.indiana.edu/community.

5.      Known Issues

This list covers some of the known problems with NWB Tool v0.3.0. Please read this before reporting any new bugs.

·        Algorithm Performance: Algorithms developed in FORTRAN are more scalable and efficient when comparing to JAVA-based implementations. They can generate and deal with large networks with over 1,000,000 nodes.

·        Visualization Algorithms: Kamada-Kawai algorithm can not handle a network with 1000 nodes because the algorithm itself has a high complexity. It takes excessive time for other JUNG-based algorithms including Circular, Spring Layout, and Fruchterman-Reingold to visualize a graph with over 1000 nodes and they can not handle a graph with over 5000 nodes in general.

·        Stop a Running Algorithm: Although the new scheduler allows users to stop/pause/resume a running algorithm, only algorithms written in JAVA that implement the ProgressTrackable interface can be controlled by the schedulers. So far, only few algorithms integrated in the tool implement this interface. A scheduler tester algorithm under FileàTest is provided to demonstrate the capabilities of the scheduler.

·        Directed vs. Undirected Networks: Many analysis algorithms in this release can only deal with undirected networks. When a user tries to apply those algorithms to a directed network, they will generate an error messages such as “Error! The program should be applied to directed networks.” In the near future, algorithms that can only be applied to directed networks won’t be selectable when an undirected network is given as input.

6.      Icons

The NWB tool uses the following icons to represent different datasets:

  Network

  Tree

  Plain text file that can be plotted using xmgrace

  Other text file

  Unknown file format or data format

7.      Report Bugs

Please report bugs to Weixia (Bonnie) Huang by email: