From: <jen...@us...> - 2007-10-19 17:04:13
|
Revision: 256 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=256&view=rev Author: jenslehmann Date: 2007-10-19 10:04:12 -0700 (Fri, 19 Oct 2007) Log Message: ----------- implemented feature request #1816656 use "refinement.replaceSearchTree = true;" to replace the search tree at each iteration instead of appending it Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java Modified: trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java =================================================================== --- trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2007-10-19 15:42:38 UTC (rev 255) +++ trunk/src/dl-learner/org/dllearner/algorithms/refinement/ROLearner.java 2007-10-19 17:04:12 UTC (rev 256) @@ -44,6 +44,7 @@ // configuration options private boolean writeSearchTree; private File searchTreeFile; + private boolean replaceSearchTree = false; private static String defaultSearchTreeFile = "log/searchTree.txt"; private Heuristic heuristic = Heuristic.LEXICOGRAPHIC; Set<AtomicConcept> allowedConcepts; @@ -100,7 +101,7 @@ // boolean quiet = false; boolean showBenchmarkInformation = false; // boolean createTreeString = false; - String searchTree = new String(); + // String searchTree = new String(); TreeSet<Node> expandedNodes = new TreeSet<Node>(nodeComparatorStable); // Konfiguration des Algorithmus @@ -159,6 +160,7 @@ Collection<ConfigOption<?>> options = new LinkedList<ConfigOption<?>>(); options.add(new BooleanConfigOption("writeSearchTree", "specifies whether to write a search tree", false)); options.add(new StringConfigOption("searchTreeFile","file to use for the search tree", defaultSearchTreeFile)); + options.add(new BooleanConfigOption("replaceSearchTree","specifies whether to replace the search tree in the log file after each run or append the new search tree", false)); StringConfigOption heuristicOption = new StringConfigOption("heuristic", "specifiy the heuristic to use", "lexicographic"); heuristicOption.setAllowedValues(new String[] {"lexicographic", "flexible"}); options.add(heuristicOption); @@ -196,6 +198,8 @@ writeSearchTree = (Boolean) entry.getValue(); else if(name.equals("searchTreeFile")) searchTreeFile = new File((String)entry.getValue()); + else if(name.equals("replaceSearchTree")) + replaceSearchTree = (Boolean) entry.getValue(); else if(name.equals("heuristic")) { String value = (String) entry.getValue(); if(value.equals("lexicographic")) @@ -222,6 +226,9 @@ if(searchTreeFile == null) searchTreeFile = new File(defaultSearchTreeFile); + if(writeSearchTree) + Files.clearFile(searchTreeFile); + // adjust heuristic if(heuristic == Heuristic.LEXICOGRAPHIC) nodeComparator = new NodeComparator(); @@ -407,11 +414,15 @@ expandedNodes.clear(); treeString += "horizontal expansion: " + minimumHorizontalExpansion + " to " + maximumHorizontalExpansion + "\n"; treeString += topNode.getTreeString(); + treeString += "\n"; // System.out.println(treeString); - searchTree += treeString + "\n"; + // searchTree += treeString + "\n"; // TODO: ev. immer nur einen search tree speichern und den an die // Datei anhängen => spart Speicher - Files.createFile(searchTreeFile, searchTree); + if(replaceSearchTree) + Files.createFile(searchTreeFile, treeString); + else + Files.appendFile(searchTreeFile, treeString); } // Anzahl Schleifendurchläufe @@ -423,8 +434,8 @@ } // Suchbaum in Datei schreiben - if(writeSearchTree) - Files.createFile(searchTreeFile, searchTree); +// if(writeSearchTree) +// Files.createFile(searchTreeFile, searchTree); // Ergebnisausgabe /* This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |