Class TheoryLearner
java.lang.Object
org.tweetyproject.arg.dung.learning.TheoryLearner
Improved version 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)
This algorithm supports 4-valued labelings as proposed in
Riveret, Régis, and Guido Governatori. "On learning attacks in probabilistic abstract argumentation." 2016.
- Author:
- Lars Bengel
-
Constructor Summary
ConstructorsConstructorDescriptionTheoryLearner(Collection<Argument> args, Semantics semantics, String solverLocation) Creates a new theory learner for the given arguments and semantics. -
Method Summary
Modifier and TypeMethodDescriptionLearns an argumentation framework that satisfies as many positive examples as possible while avoiding negative examples.
-
Constructor Details
-
TheoryLearner
public TheoryLearner(Collection<Argument> args, Semantics semantics, String solverLocation) throws NoSuchMethodException Creates a new theory learner for the given arguments and semantics.- Parameters:
args- a set of argumentssemantics- a semanticssolverLocation- path to the open wbo solver binary- Throws:
NoSuchMethodException- if the semantics is not implemented
-
-
Method Details
-
learnExamples
public DungTheory learnExamples(Map<Labeling, Integer> positiveExamples, Map<Labeling, throws IOException, InvocationTargetException, IllegalAccessExceptionInteger> negativeExamples) Learns an argumentation framework that satisfies as many positive examples as possible while avoiding negative examples.- Parameters:
positiveExamples- a map of positive examples and their weightsnegativeExamples- a map of negative examples and their weights- Returns:
- a argumentation framework inferred from the given examples
- Throws:
IOException- if an error occursInvocationTargetException- if an error occursIllegalAccessException- if an error occurs
-