An introduction to the practical use of coloured Petri Nets
The development of Coloured Petri Nets (CP-nets or CPN) has been driven by the desire to develop a modelling language - at the same time theoretically well-founded and versatile enough to be used in practice for systems of the size and complexity found in typical industrial projects. To achieve this, we have combined the strength of Petri nets with the strength of programming languages. Petri nets provide the primitives for describing synchronisation of concurrent processes, while programming languages provide the primitives for definition of data types and manipulation of their data values.
The paper focuses on the practical use of Coloured Petri Nets. It introduces the basic ideas behind the CPN language, and it illustrates how CPN models can be analysed by means of simulation, state spaces and condensed state spaces. The paper also describes how CP-nets can be extended with a time concept. In this way it is also possible to use CP-nets for performance evaluation, i.e., to evaluate the speed by which a system operates. Finally, we describe a set of computer tools that support the use of CP-nets. This tool set is used by more than three hundred organisations in forty different countries — including seventy-five commercial companies. It is available free of charge, also for commercial use.
The present paper does not contain any formal definitions. Instead all ideas and concepts are introduced by means of a number of small examples. Readers who want to consult the formal definitions can find these in , , , and . The latter is a 3-volume text book providing a detailed description of CP-nets and their use. Volume I introduces the basic concepts and definitions. Volume 2 describes the different analysis methods. Volume 3 describes experiences from nineteen projects in which CP-nets and the CPN tools have been put to practical use. Most of the projects have been carried out in an industrial setting.
KeywordsHigh-level Petri Nets Coloured Petri Nets Practical Use Modelling Validation Verification State Spaces Tool Support
Unable to display preview. Download preview PDF.
- K. Jensen: Coloured Petri Nets: A High-level Language for System Design and Analysis. In: G. Rozenberg (ed.): Advances in Petri Nets 1990, Lecture Notes in Computer Science Vol. 483, Springer-Verlag 1991, 342–416. Also in: K. Jensen and G. Rozenberg (eds.): High-level Petri Nets. Theory and Application, Springer-Verlag, 1991, 44–122.Google Scholar
- K. Jensen: An Introduction to the Theoretical Aspects of Coloured Petri Nets. In: J.W. de Bakker, W.-P. de Roever, G. Rozenberg (eds.): A Decade of Concurrency, Lecture Notes in Computer Science Vol. 803, Springer-Verlag 1994, 230–272.Google Scholar
- K. Jensen: Condensed State Spaces for Symmetrical Coloured Petri Nets. Formal Methods in System Design 9 (1996), Kluwer Academic Publishers, 7–40.Google Scholar
- K. Jensen: Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. Vol. 1: Basic Concepts, 1992. Vol. 2: Analysis Methods, 1994. Vol. 3: Practical Use, 1997. Monographs in Theoretical Computer Science, Springer-Verlag.Google Scholar
- K. Jensen, et al: Design/CPN Manuals. Meta Software Corporation and Department of Computer Science, University of Aarhus, Denmark. On-line version: http://www.daimi.aau.dk/designCPN/.Google Scholar
- J.B. Jørgensen, L.M. Kristensen: Verification of Coloured Petri Nets Using State Spaces with Equivalence Classes. In: B. Farwer, D. Moldt and M-O. Stehr (eds.): Proceedings of Workshop on Petri Nets in System Engineering (PNSE'97) Modelling, Verification, and Validation, Hamburg, Germany, Publication No. 205, Universität Hamburg, Fachberich Informatik, 1997, 20–31.Google Scholar
- R. Milner, R. Harper, M. Tofte: The Definition of Standard ML. MIT Press, 1990.Google Scholar
- R. Milner, M. Tofte: Commentary on Standard ML. MIT Press, 1991.Google Scholar
- L. Paulson: ML for the Working Programmer. Cambridge University Press, 1991.Google Scholar
- Petri Net WWW pages. URL: htip://www.daimi.aau.dk/PetriNets/.Google Scholar