org.processmining.mining.dmcscanning
Class BalancedMdmcSet

java.lang.Object
  extended by org.processmining.mining.dmcscanning.MdmcSet
      extended by org.processmining.mining.dmcscanning.BalancedMdmcSet

public class BalancedMdmcSet
extends MdmcSet

Author:
Christian W. Guenther (christian at deckfour dot org)

Field Summary
protected  double balance
           
protected  java.util.ArrayList<Admc> conflicting
           
 
Fields inherited from class org.processmining.mining.dmcscanning.MdmcSet
admcs
 
Constructor Summary
BalancedMdmcSet(double ratio)
           
 
Method Summary
 boolean addADMC(Admc candidate)
          Tries to add an ADMC to MDMC.
static MdmcSet buildMDMC(AdmcSet admcSet, double balance, int iterations, Progress progress)
          Convenience method.
protected  Admc chooseCandidate(Admc a, Admc b)
          This method should always choose for the same candidate of the two provided and thus prevent 'flattering' of choices in multiple iterations.
protected  double getDecisionValue(Admc candidate)
          create balanced value for decision
 
Methods inherited from class org.processmining.mining.dmcscanning.MdmcSet
allInProcessInstanceIterator, buildMDMC, getAll, getAllInProcessInstance, iterator, size, testOutput
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

balance

protected double balance

conflicting

protected java.util.ArrayList<Admc> conflicting
Constructor Detail

BalancedMdmcSet

public BalancedMdmcSet(double ratio)
Method Detail

addADMC

public boolean addADMC(Admc candidate)
Description copied from class: MdmcSet
Tries to add an ADMC to MDMC. This only succeeds in case all conflicting ADMCs that are already contained are smaller in size (regarding DMCs contained).

Overrides:
addADMC in class MdmcSet
Parameters:
candidate - the ADMC that is tried to be added
Returns:
whether the ADMC was inserted into MDMC

getDecisionValue

protected double getDecisionValue(Admc candidate)
create balanced value for decision

Parameters:
candidate -
Returns:

chooseCandidate

protected Admc chooseCandidate(Admc a,
                               Admc b)
This method should always choose for the same candidate of the two provided and thus prevent 'flattering' of choices in multiple iterations.

Parameters:
a -
b -
Returns:

buildMDMC

public static MdmcSet buildMDMC(AdmcSet admcSet,
                                double balance,
                                int iterations,
                                Progress progress)
Convenience method. Tries to add each element of a supplied set of ADMCs (in the given order) to build a consolidated minimal MDMC set.

Parameters:
admcSet - set of ADMCs to build MDMC from
progress - the progress indicator used for status feedback
Returns:
the newly derived set of MDMC