Presentation is loading. Please wait.

Presentation is loading. Please wait.

PNML Analyzer Reachability/Coverability Analysis of Petri Nets from PNML files Roger Ruiz-Carrillo.

Similar presentations


Presentation on theme: "PNML Analyzer Reachability/Coverability Analysis of Petri Nets from PNML files Roger Ruiz-Carrillo."— Presentation transcript:

1 PNML Analyzer Reachability/Coverability Analysis of Petri Nets from PNML files Roger Ruiz-Carrillo

2 Presentation Contents PNML Program structure Algorithm for reachability/coverability graph Tests and Comparison with PIPE[1]’s output [1] PIPE, Platform Independent Petri net Editor, software project from Department of Computing, Imperial College London. http://pipe2.sourceforge.net/ (valid in April 2012)http://pipe2.sourceforge.net/

3 PNML Petri Net Markup Language XML based PNML.org No current XSD 

4 Program Structure – Petri Net PetriNet getMarkings() setMarkings(tuple) petrinetid places transitions arcs Arc arcid weight direction place source target Place placeid tokens incomingArcs outgoingArcs Transition transitionid incomingArcs outgoingArcs isEnabled() fire() 0..1 1 1

5 Program Structure PNMLLoader: Unmarshals the petri net from the XML into PetriNet, Place, Arc and Transition objects ReachabilityAnalyzer: Creates the reachability/coverability graph and produces the GraphViz output file and XML graph representation.

6 Algorithm (created from [TM89]) build rootNode from initial marking Add rootNode to nodesToProcess While there are nodes in nodesToProcess: node = first node in nodesToProcess; remove node from nodesToProcess for each enabled transition in the net with node’s marking: fire the transition and assign the resulting marking to newMarking for inspectedNode in node and all its parents: if(newMarking dominates inspectedNode’s marking) update newMarking with infinity in the proper places if no node with newMarking already exists: create a newNode with the newMarking, assign node as its parent append newNode to nodesToProcess else newNode = existing node append newNode to node’s children along with the enabled transition [TM89] Tadao Murata, “Petri Nets: Properties, Analysis and Applications”, in Proceedings of the IEEE, vol. 77, no.4, April 1989

7 Tests – Simple Petri Net

8 Tests – Simple Petri Net: PIPE

9 Tests – Simple Petri Net: PNML Analyzer

10 Tests – Dining Philosophers (PIPE example)

11 Tests – Dining Philosophers (PIPE example) - PIPE

12 Tests – Dining Philosophers (PIPE example) – PNML Analyzer

13 Tests – Dining Philosophers (PNML.org example)

14 Tests – Dining Philosphers (PNML.org example) – PNML Analyzer


Download ppt "PNML Analyzer Reachability/Coverability Analysis of Petri Nets from PNML files Roger Ruiz-Carrillo."

Similar presentations


Ads by Google