Index: branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Tracking/Analyzers/SymbolicDataAnalysisFragmentLengthAnalyzer.cs
===================================================================
--- branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Tracking/Analyzers/SymbolicDataAnalysisFragmentLengthAnalyzer.cs	(revision 13892)
+++ branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Tracking/Analyzers/SymbolicDataAnalysisFragmentLengthAnalyzer.cs	(revision 13944)
@@ -111,31 +111,35 @@
         }
       }
-      var averageFragmentLength = (crossoverFragmentLengthDistribution.Average() + mutationFragmentLengthDistribution.Average()) / 2d;
+      var avgCXFragmentLength = crossoverFragmentLengthDistribution.Any() ? crossoverFragmentLengthDistribution.Average() : 0;
+      var avgReplacedCXFragmentLength = replacedCrossoverFragmentLengthDistribution.Any() ? replacedCrossoverFragmentLengthDistribution.Average() : 0;
+      var avgMutFragmentLength = mutationFragmentLengthDistribution.Any() ? mutationFragmentLengthDistribution.Average() : 0;
+      var avgReplacedMutFragmentLength = replacedMutationFragmentLengthDistribution.Any() ? replacedMutationFragmentLengthDistribution.Average() : 0;
+      var avgFragmentLength = (avgCXFragmentLength + avgMutFragmentLength) / 2d;
       DataTable table;
       if (!Results.ContainsKey("AverageFragmentLength")) {
         table = new DataTable("Average fragment length");
         var row = new DataRow("Average fragment length") { VisualProperties = { StartIndexZero = true } };
-        row.Values.Add(averageFragmentLength);
+        row.Values.Add(avgFragmentLength);
         table.Rows.Add(row);
         row = new DataRow("Average crossover fragment length") { VisualProperties = { StartIndexZero = true } };
-        row.Values.Add(crossoverFragmentLengthDistribution.Average());
+        row.Values.Add(avgCXFragmentLength);
         table.Rows.Add(row);
         row = new DataRow("Average replaced crossover fragment length") { VisualProperties = { StartIndexZero = true } };
-        row.Values.Add(replacedCrossoverFragmentLengthDistribution.Average());
+        row.Values.Add(avgReplacedCXFragmentLength);
         table.Rows.Add(row);
         row = new DataRow("Average mutation fragment length") { VisualProperties = { StartIndexZero = true } };
-        row.Values.Add(mutationFragmentLengthDistribution.Average());
+        row.Values.Add(avgMutFragmentLength);
         table.Rows.Add(row);
         row = new DataRow("Average replaced mutation fragment length") { VisualProperties = { StartIndexZero = true } };
-        row.Values.Add(replacedMutationFragmentLengthDistribution.Average());
+        row.Values.Add(avgReplacedMutFragmentLength);
         table.Rows.Add(row);
         Results.Add(new Result("AverageFragmentLength", table));
       } else {
         table = (DataTable)Results["AverageFragmentLength"].Value;
-        table.Rows["Average fragment length"].Values.Add(averageFragmentLength);
-        table.Rows["Average crossover fragment length"].Values.Add(crossoverFragmentLengthDistribution.Average());
-        table.Rows["Average replaced crossover fragment length"].Values.Add(replacedCrossoverFragmentLengthDistribution.Average());
-        table.Rows["Average mutation fragment length"].Values.Add(mutationFragmentLengthDistribution.Average());
-        table.Rows["Average replaced mutation fragment length"].Values.Add(replacedMutationFragmentLengthDistribution.Average());
+        table.Rows["Average fragment length"].Values.Add(avgFragmentLength);
+        table.Rows["Average crossover fragment length"].Values.Add(avgCXFragmentLength);
+        table.Rows["Average replaced crossover fragment length"].Values.Add(avgReplacedCXFragmentLength);
+        table.Rows["Average mutation fragment length"].Values.Add(avgMutFragmentLength);
+        table.Rows["Average replaced mutation fragment length"].Values.Add(avgReplacedMutFragmentLength);
       }
       if (!Results.ContainsKey("FragmentLengthDistribution")) {
