java.lang.Object
es.upm.fi.cig.multictbnc.learning.structure.constraintlearning.PC.CTPC
es.upm.fi.cig.multictbnc.learning.structure.hybrid.PC.CTPCHybridAlgorithm
All Implemented Interfaces:
StructureLearningAlgorithm

public class CTPCHybridAlgorithm extends CTPC
Implements the restriction phase (CTPC algorithm) of the hybrid structure learning algorithm.
  • Constructor Details

    • CTPCHybridAlgorithm

      public CTPCHybridAlgorithm(int maxSizeSepSet, double sigTimeTransitionHypothesis, double sigStateToStateTransitionHypothesis)
      Initialises the algorithm by proving a significance level.
      Parameters:
      maxSizeSepSet - maximum separating set size
      sigTimeTransitionHypothesis - significance level
      sigStateToStateTransitionHypothesis - significance level
  • Method Details

    • learnInitialStructure

      public boolean[][] learnInitialStructure(PGM<? extends Node> pgm, List<Integer> idxFeatureVariables)
      Learns the initial structure of a given PGM. Indexes of feature variables whose parent sets will be learnt need to be specified.
      Parameters:
      pgm - probabilistic graphical model
      idxFeatureVariables - indexes of feature variables
      Returns:
      initial adjacency matrix
    • learnParentSetNode

      protected void learnParentSetNode(PGM<? extends Node> pgm, int idxNode, boolean[][] adjacencyMatrix) throws ErroneousValueException
      Description copied from class: CTPC
      Learns the parent set of a node.
      Overrides:
      learnParentSetNode in class CTPC
      Parameters:
      pgm - probabilistic graphical model that contains the node
      idxNode - index of the node whose parent set is being learnt
      adjacencyMatrix - current adjacency matrix
      Throws:
      ErroneousValueException - if a provided parameter is erroneous for the requested task