You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by lu...@apache.org on 2014/09/23 20:57:59 UTC

git commit: Recovered debugging method that were removed in the previous commit.

Repository: commons-math
Updated Branches:
  refs/heads/master e875e6d59 -> 2a59e0ef4


Recovered debugging method that were removed in the previous commit.

The methods are useful and the warning about them being unused could be
solved with an annotation.

Project: http://git-wip-us.apache.org/repos/asf/commons-math/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-math/commit/2a59e0ef
Tree: http://git-wip-us.apache.org/repos/asf/commons-math/tree/2a59e0ef
Diff: http://git-wip-us.apache.org/repos/asf/commons-math/diff/2a59e0ef

Branch: refs/heads/master
Commit: 2a59e0ef4b8e70742a21bca76a629853aedbbd09
Parents: e875e6d
Author: Luc Maisonobe <lu...@apache.org>
Authored: Tue Sep 23 20:57:44 2014 +0200
Committer: Luc Maisonobe <lu...@apache.org>
Committed: Tue Sep 23 20:57:44 2014 +0200

----------------------------------------------------------------------
 .../neuralnet/sofm/KohonenTrainingTaskTest.java | 45 ++++++++++++++++++++
 1 file changed, 45 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-math/blob/2a59e0ef/src/test/java/org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTaskTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTaskTest.java b/src/test/java/org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTaskTest.java
index 6d5177b..d3f5628 100644
--- a/src/test/java/org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTaskTest.java
+++ b/src/test/java/org/apache/commons/math3/ml/neuralnet/sofm/KohonenTrainingTaskTest.java
@@ -17,6 +17,7 @@
 
 package org.apache.commons.math3.ml.neuralnet.sofm;
 
+import java.io.PrintWriter;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashSet;
@@ -124,6 +125,24 @@ public class KohonenTrainingTaskTest {
     }
 
     /**
+     * Creates a map of the travel suggested by the solver.
+     *
+     * @param solver Solver.
+     * @return a 4-columns table: {@code <x (neuron)> <y (neuron)> <x (city)> <y (city)>}.
+     */
+    private String travelCoordinatesTable(TravellingSalesmanSolver solver) {
+        final StringBuilder s = new StringBuilder();
+        for (double[] c : solver.getCoordinatesList()) {
+            s.append(c[0]).append(" ").append(c[1]).append(" ");
+            final City city = solver.getClosestCity(c[0], c[1]);
+            final double[] cityCoord = city.getCoordinates(); 
+            s.append(cityCoord[0]).append(" ").append(cityCoord[1]).append(" ");
+            s.append("   # ").append(city.getName()).append("\n");
+        }
+        return s.toString();
+    }
+
+    /**
      * Compute the distance covered by the salesman, including
      * the trip back (from the last to first city).
      *
@@ -160,4 +179,30 @@ public class KohonenTrainingTaskTest {
         return dist;
     }
 
+    /**
+     * Prints a summary of the current state of the solver to the
+     * given filename.
+     *
+     * @param filename File.
+     * @param solver Solver.
+     */
+    @SuppressWarnings("unused")
+    private void printSummary(String filename,
+                              TravellingSalesmanSolver solver) {
+        PrintWriter out = null;
+        try {
+            out = new PrintWriter(filename);
+            out.println(travelCoordinatesTable(solver));
+
+            final City[] result = solver.getCityList();
+            out.println("# Number of unique cities: " + uniqueCities(result).size());
+            out.println("# Travel distance: " + computeTravelDistance(result));
+        } catch (Exception e) {
+            // Do nothing.
+        } finally {
+            if (out != null) {
+                out.close();
+            }
+        }
+    }
 }