Index: /branches/CMAES/CMAES.sln
===================================================================
--- /branches/CMAES/CMAES.sln	(revision 9131)
+++ /branches/CMAES/CMAES.sln	(revision 9132)
@@ -5,6 +5,4 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Encodings.RealVectorEncoding-3.3", "HeuristicLab.Encodings.RealVectorEncoding\3.3\HeuristicLab.Encodings.RealVectorEncoding-3.3.csproj", "{BB6D334A-4BB6-4674-9883-31A6EBB32CAB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Optimization-3.3", "HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj", "{14AB8D24-25BC-400C-A846-4627AA945192}"
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.TestFunctions-3.3", "HeuristicLab.Problems.TestFunctions\3.3\HeuristicLab.Problems.TestFunctions-3.3.csproj", "{88B9B0E3-344E-4196-82A3-0F9732506FE8}"
@@ -44,16 +42,4 @@
 		{BB6D334A-4BB6-4674-9883-31A6EBB32CAB}.Release|x86.ActiveCfg = Release|x86
 		{BB6D334A-4BB6-4674-9883-31A6EBB32CAB}.Release|x86.Build.0 = Release|x86
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Debug|x64.ActiveCfg = Debug|x64
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Debug|x64.Build.0 = Debug|x64
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Debug|x86.ActiveCfg = Debug|x86
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Debug|x86.Build.0 = Debug|x86
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Release|Any CPU.Build.0 = Release|Any CPU
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Release|x64.ActiveCfg = Release|x64
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Release|x64.Build.0 = Release|x64
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Release|x86.ActiveCfg = Release|x86
-		{14AB8D24-25BC-400C-A846-4627AA945192}.Release|x86.Build.0 = Release|x86
 		{88B9B0E3-344E-4196-82A3-0F9732506FE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{88B9B0E3-344E-4196-82A3-0F9732506FE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
@@ -72,6 +58,3 @@
 		HideSolutionNode = FALSE
 	EndGlobalSection
-	GlobalSection(Performance) = preSolution
-		HasPerformanceSessions = true
-	EndGlobalSection
 EndGlobal
Index: /branches/CMAES/HeuristicLab.Algorithms.CMAEvolutionStrategy/3.3/CMAAnalyzer.cs
===================================================================
--- /branches/CMAES/HeuristicLab.Algorithms.CMAEvolutionStrategy/3.3/CMAAnalyzer.cs	(revision 9131)
+++ /branches/CMAES/HeuristicLab.Algorithms.CMAEvolutionStrategy/3.3/CMAAnalyzer.cs	(revision 9132)
@@ -43,6 +43,6 @@
     }
 
-    public IScopeTreeLookupParameter<RealVector> RealVectorParameter {
-      get { return (IScopeTreeLookupParameter<RealVector>)Parameters["RealVector"]; }
+    public ILookupParameter<RealVector> MeanParameter {
+      get { return (ILookupParameter<RealVector>)Parameters["Mean"]; }
     }
 
@@ -58,5 +58,5 @@
       : base() {
       Parameters.Add(new LookupParameter<CMAParameters>("StrategyParameters", "The CMA strategy parameters to be analyzed."));
-      Parameters.Add(new ScopeTreeLookupParameter<RealVector>("RealVector", "The real vector that is being optimized."));
+      Parameters.Add(new LookupParameter<RealVector>("Mean", "The mean real vector that is being optimized."));
       Parameters.Add(new LookupParameter<ResultCollection>("Results", "The collection to store the results in."));
     }
@@ -68,5 +68,5 @@
     public override IOperation Apply() {
       var sp = StrategyParametersParameter.ActualValue;
-      var vector = RealVectorParameter.ActualValue[0];
+      var vector = MeanParameter.ActualValue;
       var results = ResultsParameter.ActualValue;
 
Index: /branches/CMAES/HeuristicLab.Algorithms.CMAEvolutionStrategy/3.3/HeuristicLab.Algorithms.CMAEvolutionStrategy-3.3.csproj
===================================================================
--- /branches/CMAES/HeuristicLab.Algorithms.CMAEvolutionStrategy/3.3/HeuristicLab.Algorithms.CMAEvolutionStrategy-3.3.csproj	(revision 9131)
+++ /branches/CMAES/HeuristicLab.Algorithms.CMAEvolutionStrategy/3.3/HeuristicLab.Algorithms.CMAEvolutionStrategy-3.3.csproj	(revision 9132)
@@ -123,7 +123,17 @@
       <Private>False</Private>
     </Reference>
+    <Reference Include="HeuristicLab.Encodings.RealVectorEncoding-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Encodings.RealVectorEncoding-3.3.dll</HintPath>
+      <Private>False</Private>
+    </Reference>
     <Reference Include="HeuristicLab.Operators-3.3">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\..\..\..\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath>
+      <Private>False</Private>
+    </Reference>
+    <Reference Include="HeuristicLab.Optimization-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath>
       <Private>False</Private>
     </Reference>
@@ -212,16 +222,4 @@
       <Install>true</Install>
     </BootstrapperPackage>
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\..\HeuristicLab.Encodings.RealVectorEncoding\3.3\HeuristicLab.Encodings.RealVectorEncoding-3.3.csproj">
-      <Project>{bb6d334a-4bb6-4674-9883-31a6ebb32cab}</Project>
-      <Name>HeuristicLab.Encodings.RealVectorEncoding-3.3</Name>
-      <Private>False</Private>
-    </ProjectReference>
-    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
-      <Project>{14ab8d24-25bc-400c-a846-4627aa945192}</Project>
-      <Name>HeuristicLab.Optimization-3.3</Name>
-      <Private>False</Private>
-    </ProjectReference>
   </ItemGroup>
   <ItemGroup />
Index: /branches/CMAES/HeuristicLab.Encodings.RealVectorEncoding/3.3/Creators/PredefinedRealVectorCreator.cs
===================================================================
--- /branches/CMAES/HeuristicLab.Encodings.RealVectorEncoding/3.3/Creators/PredefinedRealVectorCreator.cs	(revision 9132)
+++ /branches/CMAES/HeuristicLab.Encodings.RealVectorEncoding/3.3/Creators/PredefinedRealVectorCreator.cs	(revision 9132)
@@ -0,0 +1,60 @@
+#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2012 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Data;
+using HeuristicLab.Optimization;
+using HeuristicLab.Parameters;
+using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using System;
+
+namespace HeuristicLab.Encodings.RealVectorEncoding {
+  /// <summary>
+  /// An operator which creates a new random real vector from a given real vector.
+  /// </summary>
+  [Item("PredefinedRealVectorCreator", "An operator which uses the given vector as solution.")]
+  [StorableClass]
+  public class PredefinedRealVectorCreator : RealVectorCreator, IStrategyParameterCreator {
+
+    public IValueParameter<RealVector> PredefinedRealVectorParameter {
+      get { return (IValueParameter<RealVector>)Parameters["PredefinedRealVector"]; }
+    }
+
+    [StorableConstructor]
+    protected PredefinedRealVectorCreator(bool deserializing) : base(deserializing) { }
+    protected PredefinedRealVectorCreator(PredefinedRealVectorCreator original, Cloner cloner) : base(original, cloner) { }
+    public PredefinedRealVectorCreator()
+      : base() {
+      Parameters.Add(new ValueParameter<RealVector>("PredefinedRealVector", "The real vector that is to be cloned.", new RealVector()));
+    }
+
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new PredefinedRealVectorCreator(this, cloner);
+    }
+
+    protected override RealVector Create(IRandom random, IntValue length, DoubleMatrix bounds) {
+      var predefined = PredefinedRealVectorParameter.Value;
+      if (predefined.Length != length.Value) throw new ArgumentException("The length of the predefined vector and the required length do not match.");
+      return (RealVector)predefined.Clone();
+    }
+  }
+}
Index: /branches/CMAES/HeuristicLab.Encodings.RealVectorEncoding/3.3/HeuristicLab.Encodings.RealVectorEncoding-3.3.csproj
===================================================================
--- /branches/CMAES/HeuristicLab.Encodings.RealVectorEncoding/3.3/HeuristicLab.Encodings.RealVectorEncoding-3.3.csproj	(revision 9131)
+++ /branches/CMAES/HeuristicLab.Encodings.RealVectorEncoding/3.3/HeuristicLab.Encodings.RealVectorEncoding-3.3.csproj	(revision 9132)
@@ -132,4 +132,9 @@
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath>
+      <Private>False</Private>
+    </Reference>
+    <Reference Include="HeuristicLab.Optimization-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath>
       <Private>False</Private>
     </Reference>
@@ -258,11 +263,4 @@
     </BootstrapperPackage>
   </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
-      <Project>{14ab8d24-25bc-400c-a846-4627aa945192}</Project>
-      <Name>HeuristicLab.Optimization-3.3</Name>
-      <Private>False</Private>
-    </ProjectReference>
-  </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
Index: /branches/CMAES/HeuristicLab.Problems.TestFunctions/3.3/HeuristicLab.Problems.TestFunctions-3.3.csproj
===================================================================
--- /branches/CMAES/HeuristicLab.Problems.TestFunctions/3.3/HeuristicLab.Problems.TestFunctions-3.3.csproj	(revision 9131)
+++ /branches/CMAES/HeuristicLab.Problems.TestFunctions/3.3/HeuristicLab.Problems.TestFunctions-3.3.csproj	(revision 9132)
@@ -119,4 +119,9 @@
     <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, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath>
       <Private>False</Private>
     </Reference>
@@ -213,9 +218,4 @@
       <Private>False</Private>
     </ProjectReference>
-    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
-      <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>
-      <Name>HeuristicLab.Optimization-3.3</Name>
-      <Private>False</Private>
-    </ProjectReference>
   </ItemGroup>
   <ItemGroup>
