PDC2024 is the 2024 edition of the Process Discovery Contest.
The PDC 2024 test contains 288 event logs for which a model needs to be discovered (training logs), and 96 pairs of event logs that are used to evaluate the discovered models (test logs and base logs).
The 96 pairs of test logs and base logs are all generated using the same configurable model, which has the following configurable options:
- Long-term dependencies: yes/no
- Loops: no/simple/complex
- A simple loop has a single point of entry and a single point of exit.
- A complex loop has multiple points of entry and/or multiple points of exit.
- OR constructs: yes/no
- Routing constructs: yes/no
- Optional tasks: yes/no
- Duplicate tasks: yes/no
Each pair is matched by three training logs:
- A training log without noise.
- A training log where in every trace with probability 20% either one random event is removed (40%), moved (20%), or copied (40%).
- Training log 1 with 20 fitting traces classified as positive (boolean
pdc:isPosattribute set to
true) and 20 non-fitting traces classified as negative (boolean
pdc:isPosattribute set to
Each training log contains 1000 traces that result from random walks through the configured model. A discovery algorithm may assume that a trace in a training log is fitting if the boolean
pdc:isPos attribute is set to
true, and it may assume that it is non-fitting if the boolean
pdc:isPos attribute is set to
Each test log and each base log contains 1000 traces. For every pair of a test log and a base log we determine for every trace from the test log whether it fits the discovered model better than the corresponding trace from the base log. 500 traces from the test log fit the original model better than the corresponding trace from the base log, and 500 do not. For sake of completeness: Two traces from both logs correspond if and only if they are at the same position in the corresponding logs: The fifth trace of the test log is classified against the fifth trace of the base log, etc.
How, what and when to submit?
Please let Eric Verbeek know that you want to submit your implemented discovery algorithm. Eric will then provide you with a link where you can upload your submission.
You should submit a working discovery algorithm, which can be called using a
Discover.bat Windows batch file which takes two parameters:
- The full path to the training log file, excluding the
- The full path to the model file where the discovered model should be stored, excluding any extension like
As an example, assuming that the miner discovers a Petri net,
Discover.bat logs\discovery\discovery-log models\discovered-model
will discover a model from the training log file
logs\discovery\discovery-log.xes and will export the discovered Petri net to the file
If the results of calling your Discovery.bat file as described above is a PNML file (Petri nets) or a BPMN file (BPMN diagram), then you’re done. If not, the discovery algorithm needs to come with its own working classifier algorithm, that is, a
Classify.bat Windows batch file, which takes four parameters:
- The full path to the test log file, excluding the
- The full path to the base log file, excluding the
- The full path to the model file which should be used to classify the test log, excluding any extension like
- The full path to the log file where the classified test log should be stored, excluding the
As an example, assuming that the miner discovered a Petri net,
Classify.bat logs\test\test-log logs\base\base-log models\discovered-model logs\classified\test-log
will classify whether every trace from the test log
logs\test\test-log.xes fits the Petri net from
models\discovered-model.pnml better than the corresponding trace from the base log
logs\base\base-log.xes and it will export the classified traces (by setting the
pdc:isPos attribute for every trace) as an event log in
Classification of a trace is done by adding the boolean
pdc:isPos attribute to the trace, which should be:
trueif the trace is classified positive (fits your model better than the corresponding trace in the base model) and
falseif the trace is classified negative (does not fit your model better than the corresponding trace in the base model).
Score and winners
For each training log, the
Discovery.bat file is used to discover a model from the training log. Next, the
Classify.bat is used to classify every trace in the test log against the corresponding trace in the base log using the discovered model. This results in a positive accuracy rate P and a negative accuracy rate N for this training log. From these, its F-score F is computed as 2*(P*N)/(P+N). The end score for the discovery algorithm is the average F-score over all 288 training logs. However, if computing the F-score for one training log takes on average more than 10 minutes (that is, computing the end score takes more than 2 days), the submission is considered a fail and will have no end score.
The winner is the submission with the best end score.
|Friday, 20 September 2024
|Disclosure of the data set
|Saturday, 21 September 2024
|Friday, 27 September 2024
|During ICPM 2024
Example discovery algorithms
We have run the five example miners on the data set: The Flower miner, the Directly Follows miner, the Trace (or Sequence) miner, the winning miner of the PDC 2023 (PDC2023_Winner), and a non-competing miner that scored best on the PDC 2023 data set (PDC2023_Best). The following table shows the results for these miners.