Class ImprovedRiveretTheoryLearner


  • public class ImprovedRiveretTheoryLearner
    extends java.lang.Object
    Implementation of the algorithm for learning (grounded) labelings from with some improvements: Riveret, RĂ©gis, and Guido Governatori. "On learning attacks in probabilistic abstract argumentation." 2016. - instead of stopping when no undecided attacks are left, we always use the full budget. While slower, greatly improves results. - added additional parameter for pruning instead of pruning at 0. approx. -10% of budget gives better results. eg budget: 1000 threshold: -100 - added fifth rule to capture self-attacking arguments
    Author:
    Lars Bengel
    • Constructor Summary

      Constructors 
      Constructor Description
      ImprovedRiveretTheoryLearner​(java.util.Collection<Argument> arguments, int max_cycles)
      initialize learner for the given set of arguments
    • Method Summary

      Modifier and Type Method Description
      DungTheory learnLabelings​(java.util.ArrayList<Labeling> labelings)
      learn theory without pruning discarded attacks
      DungTheory learnLabelings​(java.util.ArrayList<Labeling> labelings, boolean prune, int threshold)
      learn random labelings from the given List until no undecided attacks are left in the theory
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ImprovedRiveretTheoryLearner

        public ImprovedRiveretTheoryLearner​(java.util.Collection<Argument> arguments,
                                            int max_cycles)
        initialize learner for the given set of arguments
        Parameters:
        arguments - a set of arguments
        max_cycles - TODO description needed
    • Method Detail

      • learnLabelings

        public DungTheory learnLabelings​(java.util.ArrayList<Labeling> labelings,
                                         boolean prune,
                                         int threshold)
        learn random labelings from the given List until no undecided attacks are left in the theory
        Parameters:
        labelings - a list of labelings
        prune - if true, remove discarded attacks after each step
        threshold - TODO description needed
        Returns:
        the learned dung theory
      • learnLabelings

        public DungTheory learnLabelings​(java.util.ArrayList<Labeling> labelings)
        learn theory without pruning discarded attacks
        Parameters:
        labelings - a list of labelings
        Returns:
        the learned dung theory