Index: branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Algorithms.ESLimitedGA/3.3/HeuristicLab.Algorithms.ESLimitedGA-3.3.csproj
===================================================================
--- branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Algorithms.ESLimitedGA/3.3/HeuristicLab.Algorithms.ESLimitedGA-3.3.csproj	(revision 9416)
+++ branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Algorithms.ESLimitedGA/3.3/HeuristicLab.Algorithms.ESLimitedGA-3.3.csproj	(revision 9418)
@@ -103,40 +103,53 @@
     <Reference Include="HeuristicLab.Analysis-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Analysis-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Collections-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Common-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Core-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Data-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Operators-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Optimization-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Optimization.Operators-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization.Operators-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Parameters-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Parameters-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Persistence-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Persistence-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.PluginInfrastructure-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Random-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Random-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="HeuristicLab.Selection-3.3">
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Selection-3.3.dll</HintPath>
+      <Private>False</Private>
     </Reference>
     <Reference Include="System" />
Index: branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.AlgorithmBehavior.Analyzers/3.3/DuplicateSolutionsAnalyzer.cs
===================================================================
--- branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.AlgorithmBehavior.Analyzers/3.3/DuplicateSolutionsAnalyzer.cs	(revision 9416)
+++ branches/HeuristicLab.Analysis.AlgorithmBehavior/HeuristicLab.Analysis.AlgorithmBehavior.Analyzers/3.3/DuplicateSolutionsAnalyzer.cs	(revision 9418)
@@ -21,4 +21,5 @@
 
 
+using System.Collections.Generic;
 using System.Linq;
 using HeuristicLab.Common;
@@ -59,5 +60,5 @@
 
     [Storable]
-    private DataTableHelper chartingHelper;
+    private DataTableHelper chartingHelper, similarityChartHelper;
     #endregion
 
@@ -68,4 +69,5 @@
       : base(original, cloner) {
       chartingHelper = (DataTableHelper)original.chartingHelper.Clone(cloner);
+      similarityChartHelper = (DataTableHelper)original.similarityChartHelper.Clone(cloner);
     }
 
@@ -77,4 +79,5 @@
 
       chartingHelper = new DataTableHelper();
+      similarityChartHelper = new DataTableHelper();
     }
 
@@ -88,6 +91,8 @@
       }
       chartingHelper.InitializeChart(Results, "Duplicate Solutions", new string[] { "Duplicate Solutions per Generation" });
+      similarityChartHelper.InitializeChart(Results, "Average Similarity", new string[] { "Avg. Similarity per Generation" });
 
       var similarities = SimilarityCalculatorParameter.Value.CalculateSolutionCrowdSimilarity(ExecutionContext.Scope);
+      List<double> similaritiesArr = new List<double>();
       int counter = 0;
       for (int i = 0; i < similarities.Length; i++) {
@@ -98,6 +103,12 @@
           }
         }
+        for (int j = 0; j < similarities[i].Length; j++) {
+          if (i != j) {
+            similaritiesArr.Add(similarities[i][j]);
+          }
+        }
       }
 
+      similarityChartHelper.AddPoint(similaritiesArr.Average());
       chartingHelper.AddPoint(counter / (double)similarities.Length);
       return base.Apply();
