Class NiskanenTheorySynthesizer


  • public class NiskanenTheorySynthesizer
    extends java.lang.Object
    Implementation of the MaxSAT algorithm from: Niskanen, Andreas, Johannes Wallner, and Matti Järvisalo. "Synthesizing argumentation frameworks from examples." Journal of Artificial Intelligence Research 66 (2019)
    Author:
    Lars Bengel
    • Method Summary

      Modifier and Type Method Description
      DungTheory learnExamples​(java.util.Map<Extension,​java.lang.Integer> positiveExamples, java.util.Map<Extension,​java.lang.Integer> negativeExamples)
      learns an argumentation framework fulfilling as many positive examples as possible while trying to not fulfill any negative examples
      • Methods inherited from class java.lang.Object

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

      • NiskanenTheorySynthesizer

        public NiskanenTheorySynthesizer​(java.util.Collection<Argument> args,
                                         Semantics semantics,
                                         java.lang.String solverLocation)
                                  throws java.lang.NoSuchMethodException
        Parameters:
        args - a set of arguments
        semantics - a semantics
        solverLocation - path to the open wbo solver binary
        Throws:
        java.lang.NoSuchMethodException - if the given semantics is not implemented
    • Method Detail

      • learnExamples

        public DungTheory learnExamples​(java.util.Map<Extension,​java.lang.Integer> positiveExamples,
                                        java.util.Map<Extension,​java.lang.Integer> negativeExamples)
                                 throws java.io.IOException,
                                        java.lang.reflect.InvocationTargetException,
                                        java.lang.IllegalAccessException
        learns an argumentation framework fulfilling as many positive examples as possible while trying to not fulfill any negative examples
        Parameters:
        positiveExamples - a map of positive examples and their weights
        negativeExamples - a map of negative examples and their weights
        Returns:
        a argumentation framework inferred from the given examples
        Throws:
        java.io.IOException - if an error occurs
        java.lang.reflect.InvocationTargetException - if an error occurs
        java.lang.IllegalAccessException - if an error occurs