Class AccurateNoiseFilter


  • public class AccurateNoiseFilter
    extends java.lang.Object
    This noise filter adds noise to an event log by randomly removing events and adding events.

    It is more accurate than the NoiseLogFilter, because it guarantees that at least floor(N * noise) and maximum ceil(N * noise) events will be affected in each trace. (N being the size of the trace)

    Author:
    Andreas Rogge-Solti
    • Field Detail

      • noise

        protected double noise
      • deletionInsertionRatio

        protected double deletionInsertionRatio
      • random

        protected java.util.Random random
    • Constructor Detail

      • AccurateNoiseFilter

        public AccurateNoiseFilter​(double noise)
      • AccurateNoiseFilter

        public AccurateNoiseFilter​(double noise,
                                   double deletionInsertionRatio,
                                   long seed)
        Parameters:
        noise - the amount of noise between 1 (100% noise), 0 (0% noise)
        deletionInsertionRatio - value between 1 (only deletion) and 0 (only insertion)
        seed - the seed for the random number generator
    • Method Detail

      • insertNoise

        public org.deckfour.xes.model.XLog insertNoise​(org.deckfour.xes.model.XLog log)
        Inserts noise into the log in each trace.
        Parameters:
        log - XLog to insert noise into.
        Returns:
        a XLog that contains noise with deletionInsertionRatio ratio of deleted / inserted events
      • getNoise

        public double getNoise()
      • setNoise

        public void setNoise​(double noise)
      • getDeletionInsertionRatio

        public double getDeletionInsertionRatio()
      • setDeletionInsertionRatio

        public void setDeletionInsertionRatio​(double deletionInsertionRatio)