Simulation Models in ProM

In ProM, we support the creation of simulation models that can be loaded and simulated by CPN Tools . While a manual specification of the model characteristics is possible, one can also integrate discovered and/or pre-specified characteristics for various perspectives.

This site provides an overview of the plug-ins in ProM that can contribute to the creation of a CPN model, and features tutorials (including example files) that make it easy for you to generate a simulation model yourself.

Tutorials

The following tutorials are available, including the example files that are necessary to reproduce the described steps.

Plug-ins

When creating realistic simulation models, we need to deal with more aspects of a process than just the control-flow. Therefore, in ProM we created a data structure that we call high-level process. With high-level information we refer to process information beyond the pure control flow, i.e., additional information like data and time that can be either attached to the process as a whole, or to certain elements in the process.

Because this extra information is orthogonal to the actual control-flow, it is separated and different types of process models can be enriched with high level information. Currently, we have:

  • HLPetriNet: Enhanced Petri net models
  • HLYAWL: Enhanced YAWL models
  • HLProtos: Enhanced Protos models
  • HLActivitySet: Plain activity sets for high-level information directly extracted from the log (without the presence of an actual process model)

The following plug-ins either deal with, or produce, high-level structures that can be used to generate simulation models.

Import
Mining
  • Basic log statistics - creates a HLActivitySet
  • Decision miners - creates a HLPetriNet
  • Organizational miner - creates a HLActivitySet
  • Performance analysis with Petri net plug-in - creates a HLPetriNet
Viewing/Editing
Conversion
  • HLYAWL to HLPetriNet - converts a HLYAWL model to a HLPetri net while preserving the high-level information
  • HLProtos to HLPetriNet - converts a HLProtos model to a HLPetri net while preserving the high-level information
  • HLPetriNet to HLProtos - converts a HLPetri net to a HLProtos model while preserving the high-level information
Combining/Merging
  • Merge simulation models - merges any kind of high-level process models (simulation-relevant information might be obtained by different plug-ins, but should be used together in one simulation model)
  • Combine low-level activities - combines 'start' and 'complete' tasks that are in the process model when being mined from a log that combines 'start' and 'complete' events (the generated simulation model only deals with activities, and thus assumes every task in the model to be atomic)
Export
  • CPN Export - generates a CPN-based simulation model from a HLPetriNet
Publications
  • Discovering Simulation Models

    A. Rozinat, R.S. Mans, M. Song and W.M.P. van der Aalst
    Information Systems, Vol. 34, pages 305-327, 2009

  • Discovering Colored Petri Nets from Event Logs

    A. Rozinat, R.S. Mans, M. Song, and W.M.P. van der Aalst
    International Journal on Software Tools for Technology Transfer (STTT), Volume 10, Number 1, Pages 57-74