Index: branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Creators/RandomParameterConfigurationCreator.cs
===================================================================
--- branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Creators/RandomParameterConfigurationCreator.cs	(revision 4830)
+++ branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Creators/RandomParameterConfigurationCreator.cs	(revision 4830)
@@ -0,0 +1,52 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using HeuristicLab.Core;
+using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+using HeuristicLab.Operators;
+using HeuristicLab.Parameters;
+using HeuristicLab.Common;
+using HeuristicLab.Optimization;
+
+namespace HeuristicLab.Problems.MetaOptimization {
+  /// <summary>
+  /// An operator which creates a new random permutation of integer values.
+  /// </summary>
+  [Item("RandomParameterVectorCreator", "An operator which creates a new set of parameters TODO.")]
+  [StorableClass]
+  public sealed class RandomParameterConfigurationCreator : SingleSuccessorOperator, IStochasticOperator, IParameterConfigurationCreator {
+    public override bool CanChangeName {
+      get { return false; }
+    }
+
+    public ILookupParameter<IRandom> RandomParameter {
+      get { return (LookupParameter<IRandom>)Parameters["Random"]; }
+    }
+    public ILookupParameter<IParameterConfiguration> ParameterConfigurationParameter {
+      get { return (ILookupParameter<IParameterConfiguration>)Parameters["ParameterConfiguration"]; }
+    }
+
+    public ILookupParameter<IParameterConfiguration> NewParameterConfigurationParameter {
+      get { return (ILookupParameter<IParameterConfiguration>)Parameters["NewParameterConfiguration"]; }
+    }
+
+    [StorableConstructor]
+    private RandomParameterConfigurationCreator(bool deserializing) : base(deserializing) { }
+    private RandomParameterConfigurationCreator(RandomParameterConfigurationCreator original, Cloner cloner) : base(original, cloner) { }
+    public RandomParameterConfigurationCreator()
+      : base() {
+        Parameters.Add(new LookupParameter<IRandom>("Random", "The pseudo random number generator which should be used to initialize the new random permutation."));
+        Parameters.Add(new LookupParameter<IParameterConfiguration>("ParameterConfiguration", "The new random parameter set."));
+    }
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new RandomParameterConfigurationCreator(this, cloner);
+    }
+
+    public override IOperation Apply() {
+      NewParameterConfigurationParameter.ActualValue = (IParameterConfiguration)ParameterConfigurationParameter.ActualValue.Clone();
+      //NewParameterConfigurationParameter.ActualValue.Randomize();
+      return base.Apply();
+    }
+  }
+}
Index: branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Creators/RandomParameterSetCreator.cs
===================================================================
--- branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Creators/RandomParameterSetCreator.cs	(revision 4539)
+++ 	(revision )
@@ -1,55 +1,0 @@
-﻿using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using HeuristicLab.Core;
-using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
-using HeuristicLab.Operators;
-using HeuristicLab.Parameters;
-using HeuristicLab.Common;
-
-namespace HeuristicLab.Problems.MetaOptimization {
-  /// <summary>
-  /// An operator which creates a new random permutation of integer values.
-  /// </summary>
-  [Item("RandomParameterSetCreator", "An operator which creates a new set of parameters TODO.")]
-  [StorableClass]
-  public sealed class RandomParameterSetCreator : SingleSuccessorOperator, IParameterSetCreator {
-    public override bool CanChangeName {
-      get { return false; }
-    }
-
-    public ILookupParameter<IRandom> RandomParameter {
-      get { return (LookupParameter<IRandom>)Parameters["Random"]; }
-    }
-    public ILookupParameter<IParameterSet> ParameterSetParameter {
-      get { return (ILookupParameter<IParameterSet>)Parameters["ParameterSet"]; }
-    }
-
-    [Storable]
-    private ParameterConfigurationList parametersToOptimize;
-    public ParameterConfigurationList ParametersToOptimize {
-      get { return parametersToOptimize; }
-      set { parametersToOptimize = value; }
-    }
-
-    public RandomParameterSetCreator()
-      : base() {
-        Parameters.Add(new LookupParameter<IRandom>("Random", "The pseudo random number generator which should be used to initialize the new random permutation."));
-        Parameters.Add(new LookupParameter<IParameterSet>("ParameterSet", "The new random parameter set."));
-    }
-
-    public override IOperation Apply() {
-      ParameterSetParameter.ActualValue = new ParameterSet(ParametersToOptimize, RandomParameter.ActualValue);
-      return base.Apply();
-    }
-
-    #region Cloning
-    public override IDeepCloneable Clone(Cloner cloner) {
-      RandomParameterSetCreator clone = (RandomParameterSetCreator) base.Clone(cloner);
-      clone.parametersToOptimize = (ParameterConfigurationList)this.parametersToOptimize.Clone();
-      return clone;
-    }
-    #endregion
-  }
-}
