Analysis of large stochastic petri net models

Stochastic Petri nets are a powerful formalism for modeling a wide range of systems and system behaviors. In computer science, they are effectively used in the performance and reliability evaluation of hardware and software systems. Generally, SPNs must be studied using Monte-Carlo simulation, which is frequently too expensive. Under certain conditions, a Markov analysis is possible, but the exponential growth of the state space poses practical limitations. This thesis studies the theoretical feasibility of such analysis and explores techniques to cope with, or reduce, the exponential growth. First, we consider several extensions to the Petri net formalism and we prove an upper bound on the size of a PN with inhibitor arcs that "simulates" a PN with transition priorities, and vice versa. Then, we define "Semi-Markov SPNs", unifying into a single framework SPNs with geometric, constant, exponential, and phase-type firing time distributions. We also provide a formal interpretation of the "absorbing loop of vanishing markings", which was previously considered an error in GSPNs. The concept of output measure for a SPN is formalized using stochastic reward theory. For a SMSPN, the computation of an output measure is reduced to the study of a semi-Markov reward process. We show that the computation of the accumulated reward up to absorption in such a process has the same distribution as the time to absorption in a related semi-Markov process. We compare a steady-state solution method for GSPNs based on semi-Markov processes with the standard approach that requires "elimination of the vanishing markings". The SMP-based method is faster than the traditional approach when "M-to-N-switches" are present. We demonstrate an iterative technique to decompose a SPN with a "nearly-independent" structure. The analysis time is greatly reduced and exact output measures are obtained under certain conditions. Theoretical results and extensive sets of experiments suggest that the approximations are satisfactory when the conditions are "almost met". Finally, we illustrate the use of SPNs by modeling the availability of a distributed file system, the throughout of an Ada tasking system, and the productivity of a flexible manufacturing system.