140 likes | 439 Views
Platform Independent Petri net Editor 2 (PIPE2). CS2650 Distributed Multimedia Systems Wen Xu November 23 rd , 2010. About PIPE2. PIPE2 is an Java-based , open source , platform independent tool for creating and analyzing Petri nets including Generalized Stochastic Petri nets.
E N D
Platform Independent Petri net Editor 2 (PIPE2) CS2650 Distributed Multimedia Systems Wen Xu November 23rd, 2010
About PIPE2 • PIPE2 is an Java-based, open source, platform independent tool for creating and analyzing Petri nets including Generalized Stochastic Petri nets. • PIPE2 began life in 2002/3 as an MSc. Group Project at the Department of Computing, Imperial College London. • Website: http://pipe2.sourceforge.net/index.html
Petri Net Representation • The Petri net model is made up of Places, Arcs, Transitions, Markup Matrices and Incidence Matrices. • Places, Arcs and Transitions each have several attributes that characterize their properties, such as id, name, location, etc. • Each Petri net is encapsulated by an instance of the PNMLData class.
Input and Output Format Input XML (PNML) Output XML (PNML) PNG PostScript eDSPN <place id="P0"> <graphics> <positionx="151.0" y="91.0"/> </graphics> <name> <value>P0</value> <graphics/> </name> <initialMarking> <value>1</value> </initialMarking> </place> <transition id="T0"> <graphics> <positionx="151.0" y="151.0"/> </graphics> <name> <value>T0</value> <graphics/> </name> <orientation> <value>90</value> </orientation> <rate> <value>1.0</value> </rate> <timed> <value>false</value> </timed> </transition> <arc id="P0 to T0" source="P0" target="T0”> <arcpath id="000" x="162" y="117" curvePoint="false"/> <arcpath id="001" x="162" y="157" curvePoint="false"/> </arc>
Analysis Modules • List of Modules • Classification • Comparison • DNAmaca • GSPN Analysis • Invariant Analysis • Incidence & Marking • Passage Time Analysis • Performance Query Editor • Reachability/Converability • Response Time Analysis • Simulation • State Space Analysis • Steady State Analysis • Tagged Net Converter • The overall design of the application imposes few restrictions on developers writing custom modules. • All Modules must implement the Moduleinterface, which contains only two methods: public void run(PNMLData PetriNet) { ... } public String getName() { ... }
Comparison • The comparison module compares two Petri nets based on their attributes. The user can select the combination of attributes used for the comparison.
Reachability & Converability Graph The reachability problem for Petri nets is to decide, given a Petri net N and a marking M, whether M ∈ R(N).
Simulation • A simulation module was designed and produced to investigate performance characteristics • of a Petri net. • It is a Monte Carlo simulation that uses a random • number generator (seeded on the system clock) to pick a new marking state of the Petri net. • Simulation Setting • Firings: 100 • Replications: 5
My Project • 1. Since we have access to the source code, I plan to modified the PIPE2 to support new function to support adding additional actions(batch file, Java source code, or XML messages) to places or transitions. Batch file Source code Messages
My Project • 2. I'm going to model all the setup actions in our SIS test bed to a Petri Net model and use PIPE2 to visually control the process.
My Project • 3. Define XML labels for actions and add actions information to the output PNML files. This part might be integrated to Callen’s project.
The End THANKS