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: