The Devnet: A Petri net for discrete event simulation

  • John B. Evans
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 674)


A relationship between Petri nets and discrete-event systems is outlined. Previous attempts at providing a diagrammatic description of discrete-event systems are critically reviewed. For a Petri-net design, the extent of detail to be provided, the representation of decisions and the precise interpretation of a state, all emerge as problematic. The type of Petri net proposed here, the Devnet, takes as its aim the description of the entity- flow logic of a general simulation program, involving a reinterpretation of transition enablement and firing. Facilities to incorporate the representation of higher system complexity, leading up to the concept of transitions with disjunctive sides, are described with examples. Particular difficulties, such as the representation of temporal expressions and modular decomposition are discussed. The special relationship between the Devnet and the control of activation in the implementation of the simulation language Simian is examined, especially in relation to the latter's circumspect approach to object advancement. Finally, some questions are posed and some speculation is indulged in as to where this approach may be useful in other fields.


Circumspect token control structures discrete-event simulation engagement strategy entity interaction firing strategy net implementation object net parallelism processes program activation Simian language simulation complexity temporal expressions 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Ajmone Marsan, M., Chiola, G. and Fumagalli, A. (1987) ‘An Accurate Performance Model of CSMA/CD Bus LAN',in Rozenberg G. (Ed.) Advances in Petri Nets 1987, Lecture Notes in Computer Science 266, Springer-Verlag, Berlin 146–161.Google Scholar
  2. Baldassari, M. and Bruno, G. (1988) ‘An Environment for Object-Oriented Conceptual Programming Based on PROT Nets', in Rozenberg, G. (Ed.) Advances in Petri Nets 1988, Lecture Notes in Computer Science 340, Springer-Verlag, Berlin, 1–19.Google Scholar
  3. Ben Ahmed, S., Moalla, M., Courvoisier, M. and Valette, R. (1991) ‘Flexible Manufacturing Production System Modelling Using Object Petri Nets and their Analysis', IMACS-IFAC Symposium on Modelling and Control of Technological Systems, Lille, May 7–10, Proceedings 1 553–560.Google Scholar
  4. Birtwistle, G.M. (1979) Discrete Event Modelling on Simula, Macmillan, Basingstoke, UK.Google Scholar
  5. Clementson, A.T. (1977) Extended Control and Simulation Language — Computer Aided Programming System, Lucas Institute for Engineering Production, University of Birmingham, UK.Google Scholar
  6. Colom, J.M., Silva, M. and Villaroel, J.L. (1986) ‘On Software Implementation of Petri Nets and Coloured Petri Nets Using High-Level Concurrent Languages', in Seventh European Workshop on Application and Theory of Petri Nets, Oxford, UK, 207–241.Google Scholar
  7. Dahl, O.-J. (1968) ‘Discrete Event Simulation Languages', in Genuys, F. (Ed.) Programming Languages, Academic Press, London, 349–395.Google Scholar
  8. Drummond, M.E. (1986) A Representation of Action and Belief for Automatic Planning Systems, AIAI-TR-16, Artificial Intelligence Applications Institute, University of Edinburgh.Google Scholar
  9. Elmaghraby, S.E. (1977) Activity Networks, Wiley, New York.Google Scholar
  10. Evans, J.B. (1986) ‘A Characterisation of Discrete-event Simulation Complexity', Proceedings JSST Conference on Recent Advances in Simulation of Complex Systems, July 15–17, 1986, Tokyo, 24–28.Google Scholar
  11. Evans, J.B. (1988) Structures of Discrete Event Simulation: An Introduction to the Engagement Strategy, Ellis Horwood, Chichester, UK.Google Scholar
  12. Evans, J.B. (1989) ‘DEVNET: An Activation Net for Discrete Event Simulation', in Lasker, G.E. (Ed.) Advances in Computer Science, Windsor, Ontario, Canada; also Technical Report TR-88-03, Department of Computer Science, University of Hong Kong.Google Scholar
  13. Evans, J.B. (1990) ‘Towards a Declarative Simulation Language: SIMIAN', International Conference on Systems Management ‘90, Hong Kong, June 11–13, Proceedings 343–348.Google Scholar
  14. Evans, J.B. (1991) ‘Description of Designed Systems in SIMIAN', IMACS-IFAC Symposium on Modelling and Control of Technological Systems, Lille, May 7–10, Proceedings 1 669–674.Google Scholar
  15. Evans, J.B. (1992a) ‘The Temporal Expressions of SIMIAN', ACM Transactions on Modeling and Simulation, submitted; also Technical Report TR-91-04 of Department of Computer Science, University of Hong Kong.Google Scholar
  16. Evans, J.B. (1992b) ‘PRIMATE: An Executive Program for the Engagement Strategy', ACMTransactions on Modeling and Computer Simulation (in preparation).Google Scholar
  17. Evans, J.B. (1993) Temporal Programming in Simian, to appear.Google Scholar
  18. Genrich, H.J. and Thieler-Mevissen, G. (1976) ‘The Calculus of Facts', in Marzurkiewicz, A. (Ed.) Mathematical Foundations of Computer Science, Proceedings of the Fifth Symposium, Gdansk, September 6–10, 1976, 588–595. Lecture Notes in Computer Science 45, Springer-Verlag, Berlin.Google Scholar
  19. Gordon, G. (1975) The Application of GPSSV to Discrete System Simulation, Prentice.-Hall, Englewood Cliffs, NJ.Google Scholar
  20. Gordon, G. (1978) ‘The Development of the General Purpose Simulation System (GPSS)', ACM Sigplan Notices 13 8 183–198.Google Scholar
  21. Hartung, G. (1988) ‘Programming a Closely Coupled Multiprocessor System with High Level Petri Nets', in Rozenberg, G. (Ed.) Advances in Petri Nets 1988, Lecture Notes in Computer Science 340, Springer-Verlag, Berlin, 151–174.Google Scholar
  22. van Hentenryck, P. (1989) Constraint Handling in Logic Programming, MIT Press, Cambridge, MA.Google Scholar
  23. Hoover, S.V. and Perry, R.F. (1989) Simulation: A Problem-Solving Approach, Addison-Wesley, Reading, MA.Google Scholar
  24. Huber, P., Jensen, K., and Shapiro, R.M. (1991) ‘Hierarchies in Coloured Petri Nets', in Jensen, K. and Rozenberg, G. (Eds) High-level Petri Nets: Theory and Application, Springer-Verlag, Berlin, 215–243.Google Scholar
  25. Jensen, K. (1981) ‘Coloured Petri Nets and the Invariant Method', Theoretical Computer Science 14 317–336.Google Scholar
  26. MacNair, E.A. and Sauer, C.H. (1985) Elements of Practical Performance Modeling, Prentice-Hall, Englewood Cliffs, NJ.Google Scholar
  27. Merlin, P.M. and Farber, D.J. (1976) ‘Recoverability of Communication Protocols: Implications of a Theoretical Study', IEEE Transactions on Communications COM-24 9 1036–1043.Google Scholar
  28. Molloy, M. K. (1982) ‘Performance Analysis Using Stochastic Petri Nets', JEEE Transactions on Computers C-31 9 913–917.Google Scholar
  29. Murata, T. (1989) ‘Petri Nets: Properties, Analysis and Applications', Proceedings of the IEEE, 77 4 541–580.Google Scholar
  30. Nolan, P.J., Lane, G.M. and Fegan, J.M. (1989) ‘A Lisp-based Stochastic Petri Net Simulation Environment', in Tzafestas, S., Eisinberg, A. and Carotenuto, L. (Eds) System Modelling and Simulation, Elsevier Science, New York, 287–296.Google Scholar
  31. Nutt, G.R. (1991) ‘A Simulation System Architecture for Graph Models', in Rozenberg, G. (Ed.) Advances in Petri Nets 1991, Lecture Notes in Computer Science 524, Springer-Verlag, Berlin, 417–435.Google Scholar
  32. Overstreet, C.M. and Nance, R.E. (1985) ‘A Specification Language to Assist in Analysis of Discrete Event Simulation Models', Comm. ACM 28 2 190–201.Google Scholar
  33. Peterson, J.L. (1980) ‘A Note on Colored Petri Nets', Information Processing Letters 11 1 40–43.Google Scholar
  34. Petri, C.A. (1987) ‘“Forgotten Topics” of Net Theory', in Brauer, W., Reisig, W. and Rozenberg, G. (Eds) Advances in Petri Nets 1986, II Petri Nets: Applications and Relationships to Other Models of Concurrency, Lecture Notes in Computer Science 255, Springer-Verlag, Berlin, 500–514.Google Scholar
  35. Poole, T.G. and Szymankiewicz, J.Z. (1977) Using Simulation to Solve Problems, McGraw-Hill, London.Google Scholar
  36. Pooley, R.J. (1991) ‘Towards a Standard for Hierachical Process Oriented Discrete Event Simulation Diagrams'; ‘Part I: A Comparison of Existing Approaches', ‘Part II The Suggested Approach to Flat Models', (with Hughes, P.H.) ‘Part III: Aggregation and Hierarchical Modelling', Transactions of the Society for Computer Simulation, 8 1 1–20, 21–31, 33–41.Google Scholar
  37. Pritsker, A.A.B., Sigal, C.E. and Hammesfahr, R.D.J. (1989) SLAM II: Network Models for Decision Support, Prentice-Hall, Englewood Cliffs, NJ.Google Scholar
  38. Ramchandani, C. (1974) Analysis of Asynchronous Concurrent Systems by Timed Petri Nets, Project MAC TR-120 Massachusetts Institute of Technology, Cambridge, MA.Google Scholar
  39. Schruben, L. (1983) ‘Simulation Modeling with Event Graphs', Comm. ACM 26 11 957–963.Google Scholar
  40. Sibertin-Blanc, C. (1985) ‘High-level Petri Nets with Data-structures', Sixth European Workshop on Application and Theory of Petri Nets, Espoo, Finland.Google Scholar
  41. Sifakis, J. (1977) ‘Petri Nets for Performance Evaluation', in Beilner, H. and Gelenbe, E. (Eds) Measuring, Modeling, and Evaluating Computer Systems, Proceedings of the 3rd Symposium, IFIP Working Group 7.3, North-Holland, New York, 77–93.Google Scholar
  42. Silva, M. and Valette, R. (1990) ‘Petri Nets and Flexible Manufacturing', in Rozenberg, G. (Ed.) Advances in Petri Nets 1989, Lecture Notes in Computer Science 424, Springer-Verlag, Berlin, 374–417.Google Scholar
  43. Taha, H.A. (1988) Simulation Modeling and SIMNET, Prentice-Hall, Englewood Cliffs, NJ.Google Scholar
  44. Tate, A.R., Mathewson, S.C. and Downes, V.A. (1983) An Interactive Program Generator for Simula, Imperial College of Science and Technology, Department of Computing, Research Report DoC 83/23, London.Google Scholar
  45. Tocher, K.D. and Owen, D.G. (1960) ‘The Automatic Programming of Simulations', Proc. IFORS Conference, IEEE, New York.Google Scholar
  46. Törn A.A. (1981) ‘Simulation Graphs: A General Tool for Modeling Simulation Designs', Simulation 37 6 187–194.Google Scholar
  47. Törn A.A. (1985) ‘Simulation Nets, a Simulation Modeling and Validation Tool', Simulation 45 2 71–75.Google Scholar
  48. Törn A.A. (1988) ‘Systems Modelling and Analysis Using Simulation Nets', in Kulikowski, C.A., et al., (Eds) Artificial Intelligence and Expert Systems Languages In Modelling and Simulation, Elsevier Science North-Holland, New York, 283–288.Google Scholar
  49. Valette, R. and Bako, B. (1991) ‘Software Implementation of Petri Nets and Compilation of Rule-Based Systems', in Rozenberg, G. (Ed.) Advances in Petri Nets 1991, Lecture Notes in Computer Science 524, Springer-Verlag, Berlin, 298–316.Google Scholar
  50. Vaucher, J.G. (1973) ‘A “Wait Until” Algorithm for General Purpose Simulation Languages', Proc. of the Winter Computer Simulation Conference, 77–83.Google Scholar
  51. Wegner, P. (1990) ‘Concepts and Paradigms of Object-Oriented Programming', OOPS Messenger 11 8–87.Google Scholar
  52. Wiest, J.D. and Levy, F.K. (1977) A Management Guide to PERTICPM, Second Edition, Prentice-Hall, Englewood Cliffs, NJ.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • John B. Evans
    • 1
  1. 1.Department of Computer ScienceUniversity of Hong KongHong Kong

Personalised recommendations