org.processmining.mining.geneticmining.population.duplicates
Class DTGeneticMiningMatricesWithMinimalHeuristics

java.lang.Object
  extended by org.processmining.mining.geneticmining.population.duplicates.DTGeneticMiningMatricesWithMinimalHeuristics
All Implemented Interfaces:
DTGeneticMiningMatrices

public class DTGeneticMiningMatricesWithMinimalHeuristics
extends java.lang.Object
implements DTGeneticMiningMatrices

This class uses the follows matrices to set the maximum number of duplicated tasks that an individual (HeuristicsNet) can have. Basically, the number of duplicates of a task t is the minimum between the number of tasks that directly follow t and the number of tasks that are directly followed by t.

The arcs are set based on the dependency matrix and the power value. The more often a task t is followed by a task t', the higher the probability that an arc from a duplicate of t to a duplicate of t' will be set.

NOTE: It is assumed that an artificial START task and an artificial END task were added to the log.

Version:
1.0
Author:
Ana Karla A. de Medeiros

Constructor Summary
DTGeneticMiningMatricesWithMinimalHeuristics(java.util.Random gen, LogReader logReader, double power)
           
 
Method Summary
 cern.colt.matrix.DoubleMatrix2D getCausalMatrix()
           
 int[] getDuplicatesMapping()
          Returns the mapping from the task code in the individuals to the task code in the LogReader object that was provided to the constructor of this class.
 cern.colt.matrix.DoubleMatrix1D getEndMatrix()
           
 HNSubSet[] getReverseDuplicatesMapping()
          Returns the mapping from the task code in the LogReader object that was provided to the constructor of this class to the task code in the individuals.
 cern.colt.matrix.DoubleMatrix1D getStartMatrix()
           
 void rebuildAllMatrices()
           
 cern.colt.matrix.DoubleMatrix2D rebuildCausalMatrix()
           
 cern.colt.matrix.DoubleMatrix1D rebuildEndMatrix()
           
 cern.colt.matrix.DoubleMatrix1D rebuildStartMatrix()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DTGeneticMiningMatricesWithMinimalHeuristics

public DTGeneticMiningMatricesWithMinimalHeuristics(java.util.Random gen,
                                                    LogReader logReader,
                                                    double power)
Method Detail

getDuplicatesMapping

public int[] getDuplicatesMapping()
Returns the mapping from the task code in the individuals to the task code in the LogReader object that was provided to the constructor of this class.

Specified by:
getDuplicatesMapping in interface DTGeneticMiningMatrices

getReverseDuplicatesMapping

public HNSubSet[] getReverseDuplicatesMapping()
Returns the mapping from the task code in the LogReader object that was provided to the constructor of this class to the task code in the individuals.

Specified by:
getReverseDuplicatesMapping in interface DTGeneticMiningMatrices

getCausalMatrix

public cern.colt.matrix.DoubleMatrix2D getCausalMatrix()
Specified by:
getCausalMatrix in interface DTGeneticMiningMatrices

getEndMatrix

public cern.colt.matrix.DoubleMatrix1D getEndMatrix()
Specified by:
getEndMatrix in interface DTGeneticMiningMatrices

getStartMatrix

public cern.colt.matrix.DoubleMatrix1D getStartMatrix()
Specified by:
getStartMatrix in interface DTGeneticMiningMatrices

rebuildAllMatrices

public void rebuildAllMatrices()
Specified by:
rebuildAllMatrices in interface DTGeneticMiningMatrices

rebuildCausalMatrix

public cern.colt.matrix.DoubleMatrix2D rebuildCausalMatrix()
Specified by:
rebuildCausalMatrix in interface DTGeneticMiningMatrices

rebuildStartMatrix

public cern.colt.matrix.DoubleMatrix1D rebuildStartMatrix()
Specified by:
rebuildStartMatrix in interface DTGeneticMiningMatrices

rebuildEndMatrix

public cern.colt.matrix.DoubleMatrix1D rebuildEndMatrix()
Specified by:
rebuildEndMatrix in interface DTGeneticMiningMatrices