Download Network Workbench - Arizona State University

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Network Workbench
Alyssa Adams, Christy Contreras, Sanjeev Ramchandra, Harrison Smith APM 598 Fall 2014
n this paper, we introduce the free network analysis tool Network Workbench.
We explore the tools strengths according
to the versatility and ease of use for current
users, along with customizability and ability
to expand the current package. Each participant contributed equally to this paper and
the corrensponding presentation.
I
Introduction: Network Workbench
Functions
A very advantageous tool in the field of complex
systems and network analysis are visualization graphs
and simulations. Simulation provides abstraction
from irrelevant problems in the physical world; this
can be an attractive tool for understanding networks
in an educational environment. Network Workbench
is a widely known tool used to simulate networks in
many areas of research, including the social sciences,
physical sciences and biomedical research. Another
convenient aspect about this tool is its accessibility
to academic institutions under a no-cost license. This
program is not as powerful as some other tools used
for intensive investigation of larger and more complex
networks, but it is powerful enough for students to
quickly learn and understand the fundamentals of
network analysis in a broad range of topics.
Some of the functionalities of the NWB tool are its
ability to access and share datasets and algorithms
online across different scientific groups. The NWB
Toll provides access to over 80 algorithms and 30
sample datasets as of September 2008. The NWB
community Wiki is aimed to provide a nice learning
and sharing community as where NWB users can
upload and advertise, access and request datasets
and algorithms by posting want-ads asking for their
specific needs. The community wiki is a great place
to interact as a scientific community to use the most
up-to-date and effective algorithms out there. Saving,
loading and processing of files accepts seven different
types of formats and supports automatic conversion
among these formats, which makes it flexible and
very useful for interchanging algorithms and datasets
between different scientific groups. One can generate, run and validate network models and perform
network analysis by running the algorithms and algorithm parameters that are logged in the Console
window and in the log files. The Console window
displays the original authors of the algorithm, the
developers, the integrators, a reference paper URL,
and a link to the description of the algorithm in the
NWB community wiki. The interface has a Scheduler to keep track of the progress of all the running
algorithms where you can pause, resume or cancel
an algorithm while its still running.
Different plug-ins are used for different tasks
within the NWB Tool; the Cyber-infrastructure
Shell (CIShell) and Open Services Gateway Initiative (OSGi) run the core architecture, others convert
loaded data to in memory objects, and algorithm
plug-ins are divided into algorithms for preprocessing,
analysis, modeling and visualization. For the analysis of networks, the tool provides Network Analysis
Toolkit (NAT) to get the basic properties, such as
number of nodes and edges, node and edge attributes,
whether a network is directed or undirected, if it has
self-loops or parallel edges, average degree, etc. The
tool uses different visualizations to explore and interpret particular networks for both introductory
networking courses and advanced student research
projects. It offers a GUI, a menu driven interface that
can be used directly or can be customized by application writers though the Interpreter by programming
their own and thus allows them to understand the
protocol algorithms. The workbench is structured
around a stack of five layers abstracted from the
Internet Protocols (TCP/IP family) which includes
a set of protocol programming exercises suitable for
Page 1 of 4
introductory networking courses as well as for more
In order for plugins, algorithms, and different data
advanced student research projects.
formats to be implemented seamlessly into NWB,
the core components of NWB are OSGi-based and
CIShell overlaying OSGi. This allows NWB to share
Adjusting Network Workbench
and implement multiple algorithms and hopefully
add Cytoscapes visualization capabilities. This arAt first glance, Network Workbench is a very versa- chitecture makes it possible to integrate code from
tile tool for analyzing networks, not only because it multiple libraries and versions of the same library,
is supported on all three major computer platforms, which allows for almost countless additional plugins.
but because it also supports a wide variety of input
Some additional features include data conversion,
formats for data. It can also export data in mul- although some data conversion can be lossy and users
tiple formats, and allows access to large data sets should read documentation for more details before
through the source website. There are multiple plug- using this feature.
ins that can be added or deleted, as well as a flexible
menu within the GUI that can be customized by
the user. There are domain-specific plugin sets, and Extending Network Workbench
algorithms that are not applicable to the currently
loaded and selected dataset are greyed out. NWB The Network Workbench program can be extended
can be used for almost any discipline that uses and with code, primarily using the GUESS graph exploration tool. GUESS is an integrated package used
analyzes networks.
Upon closer examination, it is easy to see that to carry out visualization and network analysis with
Network Workbench was specifically designed to pro- an existing network in Network Workbench. Once
vide researchers with a large variety of tools that will the network of interest is imported into the program
accommodate their specific needs when analyzing (using the .nwb file format), or generated within the
networks. NWB created a Community Wiki page as program, it can be visualized by accessing GUESS
a supplement to the NWB tool, where users can add from the visualization menu. The graphic user intercontent and provide feedback. Here, algorithms that face within GUESS lets the user change the layout
you create or find can be uploaded, downloaded, or of the network, as well as node/edge shape, size,
even requested if there already isnt an algorithm in color, and positionshowever, much of the advanced
network editing and visual manipulation must be
your NWB.
The Wiki page is especially important to the NWB entered into GUESSs interpreterthe equivalent of a
user base because it offers a fallback for what NWB command line.
The GUESS interpreter is based on the Python
doesnt have pre-installed. Although it is a powerful tool, it has fewer algorithms than Pajek and language, and relies on the python modules Jython
UCINET, and is also less flexible than Cytoscape for and Gython, which interpret python in Java and the
visualization. If there is an algorithm or feature that Go languages respectively. Because the interpreter
is provided by Pajek, but not by NWB, a user can relies on Python, syntax is concise and generally very
simply visit the Wiki page and put in a request. The human readable.
online community extends its influence by inviting
any CIShell based program users such that the larger Example
scientific community can benefit from the ongoing
Shown is an example network (Fig 1a) from the
development of the program.
Currently there is a major problem with the Com- sample file florentine.nwb (included in the Network
munity Wiki entity, however. After attempting to Workbench program download) running in GUESS,
visit the website, users quickly discover the link to using the GEM layout. While the network data
the Community Wiki and all links to the supple- file (.nwb) may tell us about many of the network
mental algorithms incorrectly redirect to the main attributes (e.g. the attribute wealth in this network
homepage. As of now, there is no way to access of families, or the betweenness centrality of each
the community features or to download additional node), none of these attributes are clearly visualized.
algorithms, and the website has not been updated This is where writing extended code for the program
since 2009. This is troubling for current users, as can be useful.
The command,
they are limited to the bare features provided in the
initial installation and other sources.
>>> colorize(wealth,red,blue)
Page 2 of 4
(a) GEM layout of the default florentine.nwb
network.
work based on existing network attributes, GUESS
can be used to do additional network analysis, and
visualization based on that new analysis. For example, GUESS contains commands for listing a nodes
indegree, outdegree, and betweenness (if not already
existing as a node attribute, unlike the aforementioned example). Functions, loops, and other operators can also be used to change visualization of the
network.
Barabsi-Albert Algorithm
The Barabsi-Albert (BA) model is the simplest
known algorithm to generate a scale-free network. It
can be applied to model undirected networks such
as the collaboration network among scientists, the
movie actor network, and other social networks where
the connections between the nodes are undirected.
(b) The florentine.nwb network from Fig1a,
However, it cannot be used to generate a directed
where each node is colored on a scale from
red to blue based on the value of the nodes
network.
wealth attribute (an arbitrary positive inteThe BA model algorithm generates a scale-free
ger value).
network by incorporating growth and preferential
attachment. Starting with an initial network of a few
nodes, a new node is added at each time step. Older
nodes with a higher degree have a higher probability
of attracting edges from new nodes. The initial
number of nodes in the network must be greater
than two and each of these nodes must have at least
one connection. The final structure of the network
does not depend on the initial number of nodes in the
network. The degree distribution of the generated
(c) The florentine.nwb network from Fig1b,
where each node is now resized on a scale
network is a power law with a scaling coefficient of
from 5 to 30, where a larger size nodes
−3. (Barabsi & Albert, 1999; Barabsi & Albert,
indicates a larger betweenness-centrality.
2002).
The figure below shows the probability distribuFigure 1: GUESS visualization of the florentine.nwb nettion of the nodes on a log-log scale and the network
work.
representation as a graph. The probability pi that
the new node will be connected to node i is given as
yields the network shown in Fig 1b, where the
ki
attribute wealth is now visualized on a scale from
(1)
pi = P
red (lowest wealth value) to blue (highest wealth
j kj
P
value).
where kj is the degree of node i and j kj sums over
Now on top of that, if we wish to visualize all pre-existing nodes.
betweenness-centrality of each node, we can resize
The inputs for the algorithm are the number of
the nodes where larger nodes indicate a higher time steps, the number of initial nodes, and the numbetweenness-centrality.
ber initial edges for a new node. The algorithm starts
>>> resizeLinear(sitebetweenness,5,30)
with the initial number of nodes that are fully conThis command resizes nodes based on the attribute nected. At each time step, a new node is generated
sitebetweenness (which represents betweenness- with the initial number of edges. The probability
centrality in this example dataset) on a scale from 5 of attaching to an existing node is calculated by dito 30 (Fig 1c).
viding the degree of an existing node by the total
Besides these trivial examples of visualizing a net- number of edges. If this probability is greater than
Page 3 of 4
core tool is still very powerful and fast, even if it
does not offer as many algorithms as Pajek.
References
[1] Herr, B. and Huang, W. (2007). An Introduction to the Network Workbench and Cyberinfrastructure Shell Introductory Paper. CIShell.org,
¡http://cishell.org/wiki/uploads/Main/¿.
[2] Pullen, J. M. (2000). The Network Workbench:
Network Simulation software for Academic Investigation of Internet Concepts. Computer Networks, Vol 32 No 3 pp 365-378.
[3] Barabasi, A. and Albert, R. (1999). Emergence
of Scaling in Random Networks. Science, Vol.
286 no. 5439 pp. 509-512.
[4] Barabasi, A. and Albert, R. (2002). Statistical
mechanics of complex networks. Reviews of
Modern Physics, Vol. 74 no. 1 pp. 47-97.
Figure 2: Node degree distribution (top) and scale free
graph (bottom).
[4] NWB Team. (2006).
Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan,
¡http://nwb.slis.indiana.edu¿.
zero and greater than the random number obtained
from a random number generator then an edge is [4] NWB Team. (2008). NWB Basic Tutorial: Getattached between the two nodes. This is repeated in
ting Started. Indiana University, Northeasteach time step.
ern University, and University of Michigan,
How to execute the BA Algorithm:
¡http://nwb.slis.indiana.edu¿.
• Run with ‘Modeling − > Barabsi-Albert Scale
Free Model’ and a time step of around 1000,
initial number of nodes 2, and number of edges
1 in the input.
• Layout and determine the number and degree
of highly connected nodes via ‘Analysis − >
Unweighted and Undirected − > Degree Distribution’ using the default value.
• Plot node degree distribution using Gnuplot.
Conclusion
Network Workbench is an excellent tool for analyzing aquired network data, generating new graphs,
and visualizing networks. However, because of the
current state of the supplement website, much of
the originally intended versatility of the program is
suffocated. Users will have to seek other sources to
access the intrinsic versatility of the program. The
Page 4 of 4