ABSTRACT

Petri nets were introduced in 1962 by Dr. Carl Adam Petri (Petri, 1962). Petri nets are a powerful modeling formalism in computer science, system engineering, and many other disciplines. Petri nets combine a well-defined mathematical theory with a graphical representation of the dynamic behavior of systems. The theoretical aspect of Petri nets allows precise modeling and analysis of system behavior, while the graphical representation of Petri nets enables visualization of the modeled system state changes. This combination is the main reason for the great success of Petri nets. Consequently, Petri nets have been used to model various kinds of dynamic event-driven systems such as computer networks (Ajmone Marsan et al., 1986), communication systems (Merlin and Farber, 1976), manufacturing plants (Venkatesh et al., 1994; Zhou and DiCesare, 1989; Desrochers and Ai-Jaar, 1995), command and control systems (Andreadakis and Levis, 1988; Wang et al., 2000), real-time computing systems (Mandrioli et al., 1996; Tsai et al., 1995), logistic networks (van Landeghem and Bobeanu, 2002), and workflows (van der Aalst and van Hee, 2000; Lin et al., 2002) to mention only a few important examples. This wide spectrum of applications is accompanied by wide spectrum different aspects, which have been considered in the research on Petri nets.

A Petri net is a particular kind of bipartite directed graphs populated by four types of objects. These objects are places, transitions, directed arcs, and tokens. Directed arcs connect places to transitions or transitions to places. In its simplest form, a Petri net can be represented by a transition together with an input place and

an output place. This elementary net may be used to represent various aspects of the modeled systems. For example, a transition and its input place and output place can be used to represent a data processing event, its input data and output data, respectively, in a data processing system. To study the dynamic behavior of a Petri net modeled system in terms of its states and state changes, each place may contain zero or a positive number of tokens. Tokens are a primitive concept for Petri nets in addition to places and transitions. The presence or absence of a token in a place can indicate whether a condition associated with this place is true or false, for instance.