From: <Jen...@us...> - 2008-07-29 11:50:58
|
Revision: 1022 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=1022&view=rev Author: JensLehmann Date: 2008-07-29 11:50:56 +0000 (Tue, 29 Jul 2008) Log Message: ----------- added EvaluatedDescription support to ROLearner Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java trunk/src/dl-learner/org/dllearner/test/ComponentTest.java Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2008-07-29 08:24:15 UTC (rev 1021) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2008-07-29 11:50:56 UTC (rev 1022) @@ -40,6 +40,7 @@ import org.dllearner.utilities.Helper; import org.dllearner.utilities.owl.ConceptComparator; import org.dllearner.utilities.owl.ConceptTransformation; +import org.dllearner.utilities.owl.EvaluatedDescriptionComparator; public class ROLearner extends LearningAlgorithm { @@ -100,6 +101,8 @@ private Comparator<Node> nodeComparator; private NodeComparatorStable nodeComparatorStable = new NodeComparatorStable(); private ConceptComparator conceptComparator = new ConceptComparator(); + // comparator for evaluated descriptions + private EvaluatedDescriptionComparator edComparator = new EvaluatedDescriptionComparator(); DecimalFormat df = new DecimalFormat(); private PosNegLP learningProblem; @@ -1047,6 +1050,21 @@ return new EvaluatedDescription(candidatesStable.last().getConcept(), getSolutionScore()); } + public SortedSet<EvaluatedDescription> getCurrentlyBestEvaluatedDescriptions() { + int count = 0; + SortedSet<Node> rev = candidatesStable.descendingSet(); + SortedSet<EvaluatedDescription> cbd = new TreeSet<EvaluatedDescription>(edComparator); + for(Node eb : rev) { + cbd.add(new EvaluatedDescription(eb.getConcept(), getSolutionScore(eb.getConcept()))); + // return a maximum of 200 elements (we need a maximum, because the + // candidate set can be very large) + if(count > 200) + return cbd; + count++; + } + return cbd; + } + public void printBestSolutions(int nrOfSolutions){ if(!logLevel.equalsIgnoreCase("TRACE")){return;} if(nrOfSolutions==0)nrOfSolutions=solutions.size(); Modified: trunk/src/dl-learner/org/dllearner/test/ComponentTest.java =================================================================== --- trunk/src/dl-learner/org/dllearner/test/ComponentTest.java 2008-07-29 08:24:15 UTC (rev 1021) +++ trunk/src/dl-learner/org/dllearner/test/ComponentTest.java 2008-07-29 11:50:56 UTC (rev 1022) @@ -1,5 +1,5 @@ /** - * Copyright (C) 2007, Jens Lehmann + * Copyright (C) 2007-2008, Jens Lehmann * * This file is part of DL-Learner. * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |