Snoopy - A Tool to Design and Animate/Simulate Graph-based - - PowerPoint PPT Presentation

snoopy a tool to design and animate simulate graph based
SMART_READER_LITE
LIVE PREVIEW

Snoopy - A Tool to Design and Animate/Simulate Graph-based - - PowerPoint PPT Presentation

Basic Properties Graph Classes Case Studies Implementation Availability Future Work Snoopy - A Tool to Design and Animate/Simulate Graph-based Formalisms Monika Heiner, Ronny Richter, Martin Schwarick Brandenburg University of Technology


slide-1
SLIDE 1

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Snoopy - A Tool to Design and Animate/Simulate Graph-based Formalisms

Monika Heiner, Ronny Richter, Martin Schwarick

Brandenburg University of Technology Cottbus Computer Science Department http://www-dssz.informatik.tu-cottbus.de/software/snoopy.html

March 3, 2008

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-2
SLIDE 2

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Contents

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-3
SLIDE 3

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Basic Properties

extensible

◮ generic design facilitates the addition of new graph classes

adaptive

◮ simultaneous use of several graph types in a homogeneous

environment

◮ GUI adopts dynamically to graph type in active window

platform independent

◮ implementation in C++ and wxWidgets framework ◮ supported for Windows, Linux, and Mac

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-4
SLIDE 4

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Model Editor

Model Creation

◮ graph constraints are considered ◮ hierarchy by subgraphs ◮ logical (fusion) nodes ◮ interaction between graphs

E B A|E A A A|E B E A B E k3 k2 k1 k3 k1, k2 MA1

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-5
SLIDE 5

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Model Editor

Model Exploration

◮ forward and backward animation with different firing rules ◮ dedicated simulation using different algorithms ◮ various shapes and colours for net elements ◮ dynamic colouring of graph elements

(e.g. paths or invariants)

◮ automated layout (graphviz)

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-6
SLIDE 6

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Model Editor

File Handling

◮ generic XML file format ◮ digital signature for graphs by MD5-checksum ◮ conversion between contained graph classes ◮ export to external analysis tools ◮ import from convenient file formats

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-7
SLIDE 7

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Reachability Graph

◮ simple graph class ◮ one node and one edge type ◮ furthermore comment nodes ◮ constructable from

Petri net animation

m5 m6 m7 m8 m9 m12 m13 m2 m3 m4 m11 m10 m1 r1 r2 r3 r4 r5 r6 r9 r7 r9 r8 r7 r10 r8 r11 r6 r10 r11 r1 r6 r2 r6 r2 r7 r8 r1 r7 r11 r9 r10 r8

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-8
SLIDE 8

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Petri Net

◮ contains places and transitions as well as

hierarchy and logical nodes

◮ animation of the token game ◮ interaction manager allows to construct

the reachability graph

◮ export to a wide range of external analysis

tools (INA, Lola, Maria, MC-Kit, Pep, Prod, Charlie. . . )

◮ import of a restricted APNN file format

ready_to_send ready_to_produce buffer ready_to_consume ready_to_receive co_buffer produce send receive consume

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-9
SLIDE 9

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Stochastic Petri Net

◮ stochastic Petri nets ◮ generalized stochastic Petri nets ◮ deterministic and stochastic Petri nets ◮ biochemically propensity functions

(mass-action, level)

◮ multiple initial markings, parameter sets,

and function sets

◮ Gillespie algorithm for simulation ◮ export to PRISM, TimeNet, and Dizzy

is in preparation

Prey Predator reproduction_of_prey consumption_of_prey predator_death 2 2

Prey Predator Prey Predator

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-10
SLIDE 10

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Continuous Petri Net

◮ corresponds to a set of ordinary

differential equations

◮ visualizes the structure ◮ for a quantitative description of

biochemical reaction networks

◮ six stiff and six unstiff solvers

are available

◮ multiple initial markings

and parameter sets

◮ export to SBML

MKKK 90 MKKK_P 10 MKK 280 MKK_P 10 MKK_PP 10 MAPK 280 MAPK_P 10 MAPK_PP 10 a_1 a_2 b_1 b_2 b_3 b_4 c_1 c_2 c_3 c_4 Parameters 50 100 150 200 250 300 MAPK_P MAPK_PP MKKK MKKK_P

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-11
SLIDE 11

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Further Petri Net Classes

Extended Petri Net

◮ with additional arcs

(inhibitor, read, reset, equal)

Time Petri Net

◮ up to now time intervals or

durations for transitions

◮ export to INA

Modulo Net

◮ Petri net with modulo arc for

counting transitions firing

var sc sc sc acc inc reset 5 6 6

count1 count2 t1 t2 m 5

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-12
SLIDE 12

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Fault Tree

◮ for risk management of dependable

systems

◮ describes dependencies of component

based systems

◮ qualitative and quantitative analysis ◮ several dependability measures may be

computed

v e3 e3 e2 e2 e1 e1

& & &

>=1

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-13
SLIDE 13

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Other Graph Classes

MTBDD

◮ for documentation and

small case studies

EDL Signature Nets

◮ describes patterns of

computer network attacks

x1 x2 y2 y2 x2 y2 y1 y1 8 2 5 Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-14
SLIDE 14

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

academic

fork1 fork3 fork2 fork5 fork4 phil1 phil3 phil2 phil4 phil5

fork1 fork2 p1_eating p1_releasing p1_waiting p1_thinking p1_put_right p1_put_left p1_take_right p1_take_left

dining philosophers

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-15
SLIDE 15

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

academic

T54 F54 F64 T64 T63 F63 T65 F65 T74 F74 left64 right64 up64 down64

solitaire game

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-16
SLIDE 16

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

technical

pos1_free pos2_full pos1_full pos2_free pos3_full pos3_free

transportation system with 2 pushers

producer pusher1 consumer pusher2

pos1_free pos2_full pos1_full pos2_free waiting_P1 releasing_P1 init_P1 aquire_output_area_P1 release_output_area_P1 aquire_input_area_P1 release_input_area_P1 moving_P1

ext_P1 ext_P1 ext_P1 norm_P1 basic_P1 basic_P1 basic_P1 R2_off_P1 R2_off_P1 R1_off_P1 R1_off_P1 R1_off_P1 R1_on_P1 R1_on_P1 R1_on_P1 R2_on_P1 R2_on_P1 R2_on_P1 stop_moving_P1 step3_P1 step4_P1 step2_P1 step1_P1 start_moving_P1 aquire_output_area_P1 release_output_area_P1 ext2norm_P1 norm2ext_P1 norm2basic_P1 basic2norm_P1 R2_set_on_P1 R2_set_on_P1 R2_set_off_P1 R2_set_off_P1 R1_set_off_P1 R1_set_off_P1 R1_set_on_P1 R1_set_on_P1 tr3_P1 tr4_P1 tr2_P1 tr1_P1 tr5_P1

Pusher without error states RELAY R2 RELAY R1 PUSHER control program

concurrent pusher

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-17
SLIDE 17

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

technical

ch_DC_full ch_DC_free ch_CF_free ch_CF_full ch_A1P_full ch_A1P_free ch_TA1_full ch_TA1_free ch_A2D_full ch_A2D_free ch_FT_free ch_FT_full ch_PA2_free ch_PA2_full

coarse structure of the full refined losed system

press table deposit_belt feed_belt arm2 arm1 crane

control program of a production cell

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-18
SLIDE 18

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

biological - metabolic networks

Ru5P 4 5 Xu5P R5P 6 S7P GAP 7 E4P F6P 8 GAP 15 NAD+ + Pi G6P F6P 10 ATP ADP FBP 11 12 DHAP 13 14 ATP ADP 9 Gluc 1,3-BPG ATP ADP 16 ATP ADP 19 NAD+ NADH 20 3PG 17 2PG PEP 18 Pyr Lac 2 NADP+ 2 NADPH 4 GSH 2 3 1 2 GSSG NADH

ADP NAD NAD

Pi Pi NADP+ NADPH GSSG GSH Ru5P Xu5P R5P S7P GAP GAP E4P F6P F6P Gluc G6P FBP DHAP 1,3-BPG 3PG 2PG PEP Pyr Lac ATP ATP ATP ATP ATP ADP ADP ADP ADP ADP NAD+ NAD+ NADH NADH 15 16 17 18 19 20 13 14 12 11 10 9 2 1 3 4 5 6 7 8 2 2 2 2

glycolysis

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-19
SLIDE 19

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

biological - metabolic networks

Suc eSuc Glc Frc UDPglc G6P F6P G1P UDP UDP UTP ATP ATP ATP ATP ATP ATP ADP 29 ADP 29 ADP 29 ADP 29 ADP 29 ADP 29 S6P Pi 28 Pi 28 Pi 28 Pi 28 PP PP starch AMP SucTrans Inv HK FK SPP StaSy(b) Glyc(b) ATPcons(b) PPase rstarch geSuc SuSy SPS PGI PGM NDPkin UGPase AdK

starch production in potato tuber

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-20
SLIDE 20

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

biological - signal transduction networks

Ca++ PL Thrombos_PL Nahrung_Ca++ Abdeckung_PL Akt_XII_Plasmin Gewebe_ngOF Gewebe_TF Bldg_TTMK Abdeckung_ngOF Haemostase Fibrinolyse_System Inhibitoren Akt_Fibrinolyse Fibrinolyse Inh_Haemostase Inh_Fibrinolyse Ca++ PL F_XIIa F_XII Pre_KK HMWK KK ngOF F_XI F_XIa F_IX F_IXa TK F_VIIIa F_VIII Akt_XII_Plasmin Gewebe_ngOF Abdeckung_ngOF Akt_VIII_IIa Akt_IX_TF:VIIa Akt_X_TK Akt_XI_IIa Akt_VII_XIIa Leber_FXII Leber_PreKK Leber_HMWK Akt_PreKK_XIIa Akt_XII_ngOF Akt_XII_KK Leber_FXI Akt_XI_XIIa Leber_FIX Leber_FVIII Akt_IX_XIa Bldg_TK Abbau_TK Abbau_HMWK Akt_Plsmg_XIIa Akt_scuPA_XIIa Akt_Plsmg_KK Akt_scuPA_KK Inh_IXa_AT Inh_XIa_AT Inh_XIIa_AT Inh_KK_AT Inh_VIIIa_APC Inh_XIa_C1 Inh_XIIa_C1 Inh_KK_C1

haemostasis

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-21
SLIDE 21

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

biological - signal transduction networks

RKIP/MEK-ERK signalling pathway

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

Raf-1Star m1 RKIP m2 Raf-1Star_RKIP m3 ERK-PP m9 MEK-PP_ERK m8 Raf-1Star_RKIP_ERK-PP m4 RKIP-P_RP m11 MEK-PP m7 ERK m5 RKIP-P m6 RP m10 k1 k2 k3 k4 k6 k7 k9 k10 k5 k8 k11

slide-22
SLIDE 22

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

biological - signal transduction networks

Levchenko model

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

Raf RasGTP Raf_RasGTP RafP RafP_Phase1 MEK_RafP MEKP_RafP MEKP_Phase2 MEKPP_Phase2 ERK ERK_MEKPP ERKP_MEKPP ERKP MEKPP ERKPP_Phase3 ERKP_Phase3 MEKP ERKPP Phase2 Phase3 MEK Phase1 k3 k6 k21 k18 k9 k12 k15 k24 k27 k30 k7/k8 k1/k2 k4/k5 k10/k11 k16/k17 k22/k23 k19/k20 k13/k14 k28/k29 k25/k26

slide-23
SLIDE 23

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Case Studies

biological - gene transcription networks

signal response reporter TF TFS precursor pfb 1' TFS degradation 5 reporter degradation 7 response degradation 9 response production 8 reporter expression 6 TF degradation 2 TF expression 1 TFS disassociation 4 TFS association 3

biosensor: award winning model in the 2007 iGEM competition (MIT)

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-24
SLIDE 24

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Implementation

◮ based on the experience of the predecessor PED ◮ Snoopy was started 1997 as student project ◮ now 120.000 lines of code ◮ Acknowledgement: Matthias Dube, Markus Fieber, Anja

Kurth, Sebastian Lehrack, Thomas Menzel, Christian Rohr, Daniel Scheibler, Krispin Schulz, Alexey Tovchigrechko, Katja Winder

◮ maintenance and improvements ensured in future by students’

graduate work and a PhD project in cooperation with MPI Magdeburg

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-25
SLIDE 25

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Availability

◮ free of charge for non-commercial use ◮ source code is available on request ◮ further informations: http://www-dssz.informatik.tu-cottbus.de/software/snoopy.html

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-26
SLIDE 26

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Future Works

◮ import from bio databases ◮ import and animation of counter examples or

witnesses from external model checkers

◮ automatic conversion between stochastic and

continuous Petri nets

◮ hybrid models ◮ PNML support

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy

slide-27
SLIDE 27

Basic Properties Graph Classes Case Studies Implementation Availability Future Work

Thanks for your attention. Questions? See you for a tool demo.

Monika Heiner, Ronny Richter, Martin Schwarick BTU Cottbus, Chair DSSZ Snoopy