next up previous contents index
Next: LicensingCopying and Up: No Title Previous: Contents

Introduction to SNNS

 

SNNS (Stuttgart Neural Network Simulator) is a simulator for neural networks developed at the Institute for Parallel and Distributed High Performance Systems (Institut für Parallele und Verteilte Höchstleistungsrechner, IPVR) at the University of Stuttgart since 1989. The goal of the project is to create an efficient and flexible simulation environment for research on and application of neural nets.

  The SNNS simulator consists of three main components that are depicted in figure gif: Simulator kernel, graphical user interface and the batch execution protocol snnsbat. There is also a forth part, Nessus, that was used to construct networks for SNNS. Nessus, however, has become obsolete since the introduction of powerful interactive network creation tools within the graphical user interface and is no longer supported. The simulator kernel operates on the internal network data structures of the neural nets and performs all operations on them. The graphical user interface XGUIgif, built on top of the kernel, gives a graphical representation of the neural networks and controls the kernel during the simulation run. In addition, the user interface can be used to directly create, manipulate and visualize neural nets in various ways.

  
Figure: SNNS components: simulator kernel, graphical user interface, snnsbat, and network compiler

During the development of the user interface, high consideration was given to its effective handling. Thus complex networks can be created quickly and easily. Nevertheless, XGUI should also be well suited for unexperienced users, who want to learn about connectionist models with the help of the simulator. An online help system, partly context-sensitive, is integrated, which can offer assistance with problems.

Another important point was to enable the user to select only those aspects of the visual representation of the net in which he is interested. This includes depicting several aspects and parts of the network with multiple windows as well as suppressing unwanted information with a layer technique.

   

  
Table: Machines and operating systems on which SNNS has been tested (as of March 1995)

SNNS is implemented completely in ANSI-C. The simulator kernel has already been tested on numerous machines and operating systems (see also table gif). XGUI is based upon X11 Release 5 from MIT and the Athena Toolkit, and was tested under various window manager, like twm, tvtwm, olwm, ctwm, fvwm.

This document is structured as follows:

This chapter gif gives a brief introduction and overview of SNNS.

Chapter gif gives the details about how to obtain SNNS and under what conditions. It includes licensing, copying and exclusion of warranty. It then discusses how to install SNNS and gives acknowledgments of its numerous authors.

Chapter gif introduces the components of neural nets and the terminology used in the description of the simulator. Therefore, this chapter may also be of interest to people already familiar with neural nets.

Chapter gif describes how to operate the two-dimensional graphical user interface. After a short overview of all commands a more detailed description of these commands with an example dialog is given.

Chapter gif describes the form and usage of the patterns of SNNS

Chapter gif describes the integrated graphical editor of the 2D user interface. These editor commands allow the interactive construction of networks with arbitrary topologies.

Chapter gif is about a tool to facilitate the generation of large, regular networks from the graphical user interface.

Chapter gif describes the network analyzing facilities, built into SNNS.

Chapter gif describes the connectionist models that are already implemented in SNNS, with a strong emphasis on the less familiar network models.

Chapter gif describes the four pruning functions which are available in SNNS.

Chapter gif introduces a new visualization component for three-dimensional visualization of the topology and the activity of neural networks with wireframe or solid models.

Chapter gif introduces the batch capabilities of SNNS. They can be accessed via an additional interface to the kernel, that allows for easy background execution.

Chapter gif gives a brief overlook over the tools that come with SNNS, without being an internal part of it.

Chapter gif describes the structure of the SNNS simulator kernel.

Chapter gif discusses the internal data structures used for describing the nets.

Chapter gif describes in detail the interface between the kernel and the graphical user interface. This function interface is important, since the kernel can be included in user written C programs.

Chapter gif details the activation functions and output function that are already built in.

Chapter gif gives implementation details of the simulator kernel.

Chapter gif deals with the concepts used in the implementation of SNNS-XGUI. It also explains the source code, which is especially interesting for further projects.

Chapter gif gives implementation details of the 3D network visualization component.

The description of the Nessus programming language and compiler is not included in this document but in a separate manual. This manual is available in German only. It consists of the description of the language elements, which are explained with examples, and information regarding the implementation of the compiler.

In appendix A the format of the file interface to the kernel is described, in which the nets are read in and written out by the kernel. Files in this format may also be generated by any other program, the Nessus network compiler or even an editor.

The grammars for both network and pattern files are also given here.

In appendix B and C examples for network and batch configuration files are given.



next up previous contents index
Next: LicensingCopying and Up: No Title Previous: Contents



Niels Mache
Wed May 17 11:23:58 MET DST 1995