Index: /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/FullTreeCreatorTest.cs
===================================================================
--- /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/FullTreeCreatorTest.cs	(revision 6948)
+++ /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/FullTreeCreatorTest.cs	(revision 6949)
@@ -58,17 +58,28 @@
       }
       stopwatch.Stop();
-
+      double msPerRandomTreeCreation = stopwatch.ElapsedMilliseconds / (double)POPULATION_SIZE;
+      int count = 0;
+      int depth = 0;
+      int maxLength = 0;
       foreach (var tree in randomTrees) {
         Util.IsValid(tree);
         Assert.IsTrue(tree.Depth == MAX_TREE_DEPTH);
+        if (maxLength < tree.Length)
+          maxLength = tree.Length;
+        count += tree.Length;
+        depth += tree.Depth;
       }
-      double msPerRandomTreeCreation = stopwatch.ElapsedMilliseconds / (double)POPULATION_SIZE;
 
       Console.WriteLine("FullTreeCreator: " + Environment.NewLine +
-        msPerRandomTreeCreation + " ms per random tree (~" + Math.Round(1000.0 / (msPerRandomTreeCreation)) + "random trees / s)" + Environment.NewLine +
-        Util.GetSizeDistributionString(randomTrees, 105, 5) + Environment.NewLine +
+        msPerRandomTreeCreation + " ms per random tree (~" +
+        Math.Round(1000.0 / (msPerRandomTreeCreation)) + "random trees / s)" + Environment.NewLine +
+        Util.GetSizeDistributionString(randomTrees, maxLength, 5) + Environment.NewLine +
         Util.GetFunctionDistributionString(randomTrees) + Environment.NewLine +
         Util.GetNumberOfSubtreesDistributionString(randomTrees) + Environment.NewLine +
-        Util.GetTerminalDistributionString(randomTrees) + Environment.NewLine
+        Util.GetTerminalDistributionString(randomTrees) + Environment.NewLine +
+        "Average tree depth: " + depth / POPULATION_SIZE + Environment.NewLine +
+        "Average tree length: " + count / POPULATION_SIZE + Environment.NewLine +
+        "Maximum tree length: " + maxLength + Environment.NewLine +
+        "Total nodes created: " + count + Environment.NewLine
         );
       Assert.IsTrue(Math.Round(1000.0 / (msPerRandomTreeCreation)) > 300); // must achieve more than 300 random trees / s
Index: /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/GrowTreeCreatorTest.cs
===================================================================
--- /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/GrowTreeCreatorTest.cs	(revision 6948)
+++ /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/GrowTreeCreatorTest.cs	(revision 6949)
@@ -59,15 +59,26 @@
       stopwatch.Stop();
 
+      int count = 0;
+      int depth = 0;
+      int maxLength = 0;
       foreach (var tree in randomTrees) {
         Util.IsValid(tree);
+        if (maxLength < tree.Length)
+          maxLength = tree.Length;
+        count += tree.Length;
+        depth += tree.Depth;
       }
+
       double msPerRandomTreeCreation = stopwatch.ElapsedMilliseconds / (double)POPULATION_SIZE;
 
       Console.WriteLine("GrowTreeCreator: " + Environment.NewLine +
         msPerRandomTreeCreation + " ms per random tree (~" + Math.Round(1000.0 / (msPerRandomTreeCreation)) + "random trees / s)" + Environment.NewLine +
-        Util.GetSizeDistributionString(randomTrees, 105, 5) + Environment.NewLine +
+        Util.GetSizeDistributionString(randomTrees, maxLength, 5) + Environment.NewLine +
         Util.GetFunctionDistributionString(randomTrees) + Environment.NewLine +
         Util.GetNumberOfSubtreesDistributionString(randomTrees) + Environment.NewLine +
-        Util.GetTerminalDistributionString(randomTrees) + Environment.NewLine
+        Util.GetTerminalDistributionString(randomTrees) + Environment.NewLine +
+        "Average tree depth: " + depth / POPULATION_SIZE + Environment.NewLine +
+        "Average tree length: " + count / POPULATION_SIZE + Environment.NewLine +
+        "Total nodes created: " + count + Environment.NewLine
         );
       Assert.IsTrue(Math.Round(1000.0 / (msPerRandomTreeCreation)) > 300); // must achieve more than 300 random trees / s
Index: /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/ProbabilisticTreeCreaterTest.cs
===================================================================
--- /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/ProbabilisticTreeCreaterTest.cs	(revision 6948)
+++ /trunk/sources/HeuristicLab.Tests/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4/ProbabilisticTreeCreaterTest.cs	(revision 6949)
@@ -60,6 +60,10 @@
       stopwatch.Stop();
 
+      int count = 0;
+      int depth = 0;
       foreach (var tree in randomTrees) {
         Util.IsValid(tree);
+        count += tree.Length;
+        depth += tree.Depth;
       }
       double msPerRandomTreeCreation = stopwatch.ElapsedMilliseconds / (double)POPULATION_SIZE;
@@ -70,5 +74,8 @@
         Util.GetFunctionDistributionString(randomTrees) + Environment.NewLine +
         Util.GetNumberOfSubtreesDistributionString(randomTrees) + Environment.NewLine +
-        Util.GetTerminalDistributionString(randomTrees) + Environment.NewLine
+        Util.GetTerminalDistributionString(randomTrees) + Environment.NewLine +
+        "Average tree depth: " + depth / POPULATION_SIZE + Environment.NewLine +
+        "Average tree length: " + count / POPULATION_SIZE + Environment.NewLine +
+        "Total nodes created: " + count + Environment.NewLine
         );
       Assert.IsTrue(Math.Round(1000.0 / (msPerRandomTreeCreation)) > 250); // must achieve more than 250 random trees / s
