Package jline.api.spn


package jline.api.spn
Stochastic Petri net analysis.

Algorithms specific to the SPN formalism, as opposed to the formalism-agnostic decision-diagram machinery in jline.api.mdd. Spn_mdd turns a Petri net into the reachable set and Kronecker rate descriptor that Mdd_mcd consumes. Spn_sinvariants, Spn_conv, Spn_rec_enabled and Spn_metrics carry the product-form side: the invariant basis, the convolution over its load vector, and the stationary measures read off the MDD-rec masses.

Property analysis: Spn_tinvariants, Spn_siphons, Spn_traps and Spn_structprops are structural (Farkas T-invariants, minimal siphons and traps with Commoner's property, LP boundedness, conservativeness, consistency, repetitiveness and net classes; they ignore inhibitor arcs, priorities and immediate precedence, listed in ignored); Spn_reachgraph and Spn_reachprops are behavioural (boundedness, deadlocks, L4 liveness, reversibility on the GSPN reachability graph); Spn_properties aggregates them.

References:

  • A.S. Miner, G. Ciardo, "Efficient Reachability Set Generation and Storage Using Decision Diagrams", ICATPN 1999, LNCS 1639, pp.6-25.
  • S. Balsamo, A. Marin, I. Stojic, "Computation of the normalising constant for product-form models of distributed systems with synchronisation", Future Generation Computer Systems 111 (2020) 475-490.
  • T. Murata, "Petri nets: properties, analysis and applications", Proc. IEEE 77(4) (1989) 541-580.
  • J.L. Coleman, W. Henderson, P.G. Taylor, "Product form equilibrium distributions and a convolution algorithm for stochastic Petri nets", Performance Evaluation 26(3), 1996, 159-180.

MATLAB twin: matlab/src/api/spn/. Python twin: python/line_solver/api/spn/.