S N O O P Y
latest update: February 22, 2013, at 03:40 PM
Please use the following reference to give credits to Snoopy:
M Heiner, M Herajy, F Liu, C Rohr and M Schwarick:
Snoopy – a unifying Petri net tool;
In Proc. PETRI NETS 2012, Hamburg,
Springer, LNCS, volume 7347, 398–407,
June 2012
News
- 2012-04-27 loading of exported simulation data in simulation dialog and several bug fixes
- 2012-01-30 export and import of Colored Abstract Net Description Language (CANDL) and simulation of colored hybrid Petri nets is now available
- 2011-12-02 new netclass colored hybrid Petri nets (simulation is not available yet) and many improvements for colored Petri nets
- 2011-05-19 improvements of handling larger colored Petri nets and several bug fixes again
- 2011-02-18 new net class hybrid (continuous / stochastic) Petri nets
- 2010-12-17 animation of Snoopy files in a web browser now available
- 2010-09-28 new net classes: colored Petri nets, colored stochastic and continuous Petri nets
- 2009-12-02 new net class Freestyle net
- 2009-07-06 new export of stochastic attributes lists to csv
- 2009-06-10 some bugfixes in the stochastic simulation
- 2009-05-26 New stable version of snoopy
- 2009-03-27 New Export from stochastic Petri nets to PRISM
- 2009-03-06 New PRNG (Mersenne-Twister) for stochastic Simulation
- 2009-02-04 Many bugfixes and small changes regarding the stability of snoopy
- 2008-11-18 Snoopy is now Unicode capable, many bugfixes
- 2008-10-09 New net class MusicNets available, again many bugfixes
- 2008-08-08 improvements and bugfixes for SBML import
- 2008-08-05 new beta version with SBML support and some minor bugfixes
Downloads
- Windows version
- Linux version
- Mac OS X version (10.5+, Intel only)
For our faithful long-term friends, who want to transfer their PED-files, we provide here a ped2snoopy converter, and some useful hints to use it.
Here are some examples to get used to the tool:
There is no manual available, but you will probably not miss it. Anyway, here you find some useful hints (tricks and tips, undocumented features, scheduled extensions, etc) are not supposed to be exhaustive.
General Description
Snoopy is a software tool to design and animate hierarchical graphs, among others Petri nets. The tool has been developed - and is still under development - at the University of Technology in Cottbus, Dep. of Computer Science, "Data Structures and Software Dependability".
The tool is in use for the verification of technical systems, especially software-based systems, as well as for the validation of natural systems, i.e. biochemcial networks as metabolic, signal transduction, gene regulatory networks, compare poster "overview on the research activities of our working group".
Basic Properties
- extensible
- generic design facilitates add on of new graph types
- adaptive
- simultaneous use of several graph types
- GUI adopts dynamically to graph type in active window
- platform independent
- implementation: C++, wxWidgets, Xerces
- supported for Windows, Mac OS X and Linux
Main Features
- hierarchies by subgraphs
- logical (fusion) nodes
- different shapes for net elements
- colouring of graph elements (e.g. paths or invariants)
- automated layout by Graphviz library
- digital signature by md5 hash function
- animation of place/transition Petri nets
- simulation of stochastic/continuous Petri nets
- printing support: eps, Xfig, FrameMaker
- import/export from/to analysis tools, see related software
- SBML import/export (rules, events, functions not supported)
- support of web-based Petri net animation, see sampler
Available Graph Classes
- place/transition Petri net - QPN
- extended Petri net (read / inhibitor / equal / reset arcs) - XPN
- time(d) Petri net - TPN
- (extended) stochastic Petri net - XSPN
- continuous Petri net - CPN
- hybrid (continuous & stochastic) Petri nets - HPN
- colored qualitative / stochastic / continuous / hybrid Petri nets - QPNc / XSPNc / CPNc / HPNc
- modulo Petri net - MPN
- "music" Petri net
- reachability graph - RG
- MTBDD/MTIDD
- fault tree - FT
- extended fault tree - XFT
- freestyle net
- EDL signature net
- < your favourite graph class ? >
Upcoming
- constants to design flexible and scalable models
- PNML support
- managing and executing animation sequences (e.g. counter examples produced by external analysis tools)
Imports and Exports
All imports and exports to non Snoopy file formats are listed here.
Imports
- ANDL ⇒ QPN, XPN, CPN, XSPN, HPN
- CANDL ⇒ QPNc, XPNc, CPNc, XSPNc, HPNc
- APNN ⇒ QPN, XPN, XSPN
- SBML ⇒ QPN, CPN, XSPN
- PED ⇒ QPN
- TINA ⇒ QPN
- CSV (colored Declarations) ⇒ QPNc, XPNc, CPNc, XSPNc, HPNc
- CSV (Markings, Functions, Parameters) ⇒ XSPN
- DNF ⇒ FT, XFT
- Simulation results in CSV ⇒ CPN, XSPN, HPN, CPNc, XSPNc, HPNc
Exports
- EPS, Latex, MIF, XFig ⇒ all graph classes
- ANDL ⇒ QPN, XPN, CPN, XSPN, HPN
- CANDL ⇒ QPNc, XPNc, CPNc, XSPNc, HPNc
- APNN ⇒ QPN, XPN, XSPN, QPNc, XPNc, CPNc, XSPNc, HPNc
- SBML ⇒ QPN, XPN, CPN, XSPN
- ODEs to Text ⇒ CPN, HPN
- METATOOL ⇒ QPN, XPN, CPN, XSPN
- Modelica ⇒ CPN, XSPN, HPN
- CPNTool ⇒ QPNc, XPNc, XSPNc
- CSV (colored Declarations) ⇒ QPNc, XPNc, CPNc, XSPNc, HPNc
- CSV (Markings, Functions, Parameters) ⇒ XSPN
- SMART ⇒ QPN, XSPN
- INA ⇒ QPN
- LoLA ⇒ QPN
- Maria ⇒ QPN
- PEP ⇒ QPN
- Prod ⇒ QPN
- TINA ⇒ QPN
- PRISM ⇒ XSPN
- Simulation results in CSV ⇒ CPN, XSPN, HPN, CPNc, XSPNc, HPNc
Manuals
- [BHM11]
MA Blätke, M Heiner, and W Marwan:
Tutorial - Petri Nets in Systems Biology;
Technical report, Otto von Guericke University Magdeburg, Magdeburg Centre for Systems Biology, August 2011. [ pdf ] [ BibTeX ]
- [MRH12]
W Marwan, C Rohr and M Heiner:
Petri nets in Snoopy: A unifying framework for the graphical display, computational modelling, and simulation of bacterial regulatory networks;
In Methods in Molecular Biology – Bacterial Molecular Networks, (Jv Helden, A Toussaint and D Thieffry, Eds.), Humana Press, pages 409–437, 2012. [ url ] [ pdf ] [ BibTeX ]
- [LHR12]
F Liu, M Heiner and C Rohr:
Manual for Colored Petri Nets in Snoopy;
Technical report 02-12, Brandenburg University of Technology Cottbus, Department of Computer Science, March 2012. [ pdf ] [ BibTeX ]
Web Animation
We support web browser animation of Snoopy files (extended Petri nets only). Therefor we use XSL transformation to SVG and JavaScript for animation.
Download: patty.zip
Installation notes:
- Unpack patty.zip into the root folder of your web server.
- Copy your Snoopy files on your web server.
- Add the Snoopy files to the type text/xml,
e.a. add the line "AddType text/xml spept spped" to your .htaccess file.
- If that is not possible rename the files from "filename.spped" to "filename.xml".
- Now you can open your Snoopy files in your browser basicStructures.spped.
Attention:
Web browsers are constantly evolving and often differ in some subtle details. It is hardly possible to master this vast variety at the current state of technology. For known bugs see sampler.
This feature is based on:
- [Schw09]
Marcel Schwarze:
Web-based Petri net animation (in German);
Diploma thesis, FH Lausitz, Dep. of CS, November 2009. [ BibTeX ]
- [Schu08]
Krispin Schulz:
An Extension of the Snoopy Software to Process and Manage Petri Net Animations (in German);
Bachelor thesis, BTU Cottbus, Dep. of CS, November 2008. [ pdf ] [ BibTeX ]
Related Software
Bug Reports
Submit your bug reports and comments about Snoopy HERE.
- Please check, if your problem still exists in the latest available version of Snoopy
- Please include the information about your platform (Windows, Linux) and Snoopy build details (available in the Help->About window)
Mailing List
You can join our mailing list if you want to kept posted of Snoopy's development:
This mailing list is for discussion of new features, bug reports, and for announcements of new Snoopy versions.
For joining our mailing list write an email to majordomo [snail] informatik [period] tu-cottbus [period] de -> mailto:majordomo [snail] informatik [period] tu-cottbus [period] de with no subject and the following text inside:
subscribe snoopy-l
Then you get a email with a authentication code to ensure that nobody can put others on the list. Reply to this email and send back only the line with the authentication code as described in the email.
For leaving our mailing list you
may simply send the command "unsubscribe" followed by the list name:
unsubscribe snoopy-l
(This command may fail if your provider has changed the way your address is shown in your mail.)
To remove an address other than the one from which you're sending the request, give that address in the command:
unsubscribe snoopy-l jqpublic@my-isp.com