[Back]


Talks and Poster Presentations (with Proceedings-Entry):

G. Music, I. Hafner, S. Winkler:
"A Matlab Based Petri Net Tool for E-learning: Examples for Timed Simulation and Scheduling";
Talk: MATHMOD 2012 - 7th Vienna Conference on Mathematical Modelling, Wien; 2012-02-14 - 2012-02-17; in: "Preprints Mathmod 2012 Vienna - Full Paper Volume", F. Breitenecker, I. Troch (ed.); Argesim / Asim, 38 (2012), 252 - 253.



English abstract:
Introduction. TheMMT-web server is a part of the E-learning infrastructure at Vienna University of Technology,
which enables students to get basic insight into the field of simulation and modelling in a user-friendly way. Main
model parameters of examples can be adjusted and the parameter effects can be observed. Most examples on
the MMT server are implemented in Matlab and recent developments include the ability to implement complex
examples by various Matlab modelling and simulation toolboxes, including Simulink and Simscape.
An increased interest in discrete-event and hybrid systems motivated the investigation of possible implementation
of Petri net based examples on the MMT server. Petri nets are widely used modelling formalism for description of
discrete-event systems with highly parallel and cooperating activities. Therefore an object oriented Matlab based
Petri net kernel was implemented that can be used to implement simple examples within MMT server environment.
Petri nets and Petri net classes Petri nets were initially introduced in the form of Condition/Event Systems with
only binary markings and simple arcs. Later a number of modifications of the basic system model was introduced,
including integer markings and weighted arcs. The resulting Place/Transition Petri nets became a central model,
which is well explored in terms of analysis and synthesis techniques [3]. The basic Place/Transition Petri net model
can be extended in different ways, leading to other Petri net classes.
The concept of time is not explicitly given in the original definition of Petri nets. For many practical applications,
execution times have to be considered. Therefore various authors extended Petri nets with time representation, e.g.
firing durations, holding durations and enabling durations. Coloured Petri nets enable to distinguish among tokens
based on an assigned attribute, which is called colour. This way the structurally complex P/T Petri net models can
be represented in a compact form, while preserving the model behaviour. A definition of simple Coloured Petri
nets (CPN) without transition guards can be derived by folding places and transitions of the P/T Petri net [1]. If
a token count of a place is replaced by a token quantity, firing of a transition only removes a fraction of the token
quantity from its input places. The token flow through firing transitions becomes continuous. Much of the research
deals with basic timed continuous Petri nets (CCPN) where maximal firing speeds are constant [2].
Matlab implementation The previously developed PetriSimM Petri net toolbox [4] is based on Matlab graphical
user interface with callbacks to a number of m-script functions. The specifics of MMT server environment as well
as improved object oriented programming support in recent versions of Matlab motivated the development of a
new object oriented toolset, which can be used to build, analyze and simulate Petri net models in a script based
manner without a dedicated user interface.
Different Petri net classes naturally map to object classes in the software implementation of the developed toolset.
All classes are based on an abstract APetriNet object class in order to standardize basic Petri net properties and
methods. Two basic sub-classes are PTPetriNet, which implements Place/Transition Petri net class and CPetriNet,
which implements simple coloured Petri net class. HDPetriNet and EDPetriNet represent two classes of timed
Petri nets, with implementation of holding duration and enabling duration time principle, respectively. CCPetriNet
implements a version of continuous time Petri nets, and CTPetriNet implements a timed version of Coloured Petri
nets, also applying holding duration time principle.
Examples A set of testing examples was implemented to check the performance of the developed toolset in
combination with MMT server. Due to limited interaction with the user and the lack of animation capabilities the
examples were chosen, which result in a series of markings that can be simply plotted in a Matlab figure.
The timed simulation example tends to illustrate the simulation of a Petri net employing holding duration time
principle. It also illustrates the notion of conflict in Petri nets, possible conflict resolution strategies and corresponding
effects on marking evolution of the timed Petri net. The scheduling example illustrates a classical
job-shop scheduling problem. The goal is to optimize the processing order of a number of jobs on a number of
machines in a way to minimize the total processing time, i.e., the makespan.

Created from the Publication Database of the Vienna University of Technology.