Index: branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithm.cs
===================================================================
--- branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithm.cs	(revision 11620)
+++ branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithm.cs	(revision 11676)
@@ -189,4 +189,7 @@
     }
 
+    #endregion
+
+    #region Preconfigured Analyzers
     [Storable]
     private BestAverageWorstQualityAnalyzer qualityAnalyzer;
@@ -235,5 +238,6 @@
       var initializeAgeProcessor = new UniformSubScopesProcessor();
       var initializeAge = new VariableCreator() { Name = "Initialize Age" };
-      var initializeLocalEvaluatedSolutions = new SubScopesCounter();
+      var initializeLayerPopulationSize = new SubScopesCounter() { Name = "Init LayerPopulationCounter" };
+      var initializeLocalEvaluatedSolutions = new Assigner() { Name = "Initialize LayerEvaluatedSolutions" };
       var initializeGlobalEvaluatedSolutions = new DataReducer() { Name = "Initialize EvaluatedSolutions" };
       var resultsCollector = new ResultsCollector();
@@ -263,10 +267,14 @@
 
       initializeAgeProcessor.Operator = initializeAge;
-      initializeAgeProcessor.Successor = initializeLocalEvaluatedSolutions;
+      initializeAgeProcessor.Successor = initializeLayerPopulationSize;
+
+      initializeLayerPopulationSize.ValueParameter.ActualName = "LayerPopulationSize";
+      initializeLayerPopulationSize.Successor = initializeLocalEvaluatedSolutions;
 
       initializeAge.CollectedValues.Add(new ValueParameter<IntValue>("Age", new IntValue(0)));
       initializeAge.Successor = null;
 
-      initializeLocalEvaluatedSolutions.ValueParameter.ActualName = "LayerEvaluatedSolutions";
+      initializeLocalEvaluatedSolutions.LeftSideParameter.ActualName = "LayerEvaluatedSolutions";
+      initializeLocalEvaluatedSolutions.RightSideParameter.ActualName = "LayerPopulationSize";
       initializeLocalEvaluatedSolutions.Successor = null;
 
@@ -526,4 +534,5 @@
     #endregion
 
+    #region AgeLimits calculation
     private void RecalculateAgeLimits() {
       IEnumerable<int> scheme;
@@ -563,4 +572,5 @@
         yield return (int)Math.Pow(@base, i);
     }
+    #endregion
   }
 }
Index: branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithmMainLoop.cs
===================================================================
--- branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithmMainLoop.cs	(revision 11620)
+++ branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/AlpsGeneticAlgorithmMainLoop.cs	(revision 11676)
@@ -132,5 +132,5 @@
       generationsIcrementor.Successor = evaluatedSolutionsReducer;
 
-      evaluatedSolutionsReducer.ParameterToReduce.ActualName = "EvaluatedSolutions";
+      evaluatedSolutionsReducer.ParameterToReduce.ActualName = "LayerEvaluatedSolutions";
       evaluatedSolutionsReducer.TargetParameter.ActualName = "EvaluatedSolutions";
       evaluatedSolutionsReducer.ReductionOperation.Value = new ReductionOperation(ReductionOperations.Sum);
Index: branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/EldersEmigrator.cs
===================================================================
--- branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/EldersEmigrator.cs	(revision 11620)
+++ branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/EldersEmigrator.cs	(revision 11676)
@@ -60,5 +60,5 @@
       var subScopesCounter = new SubScopesCounter();
       // TODO: if expression calculator supports int, use expression calculator
-      var countCalculator = new MergingReducerCalculator() { Name = "NumSubScopes = Min(NumSubScopes, PopulationSize)" };
+      var countCalculator = new MergingReducerCalculator() { Name = "LayerPopulationSize = Min(LayerPopulationSize, PopulationSize)" };
       //var countCalculator = new ExpressionCalculator() { Name = "NumSubScopes = Min(NumSubScopes, PopulationSize)" };
       var bestSelector = new BestSelector();
@@ -81,5 +81,5 @@
       mergingReducer.Successor = subScopesCounter;
 
-      subScopesCounter.ValueParameter.ActualName = "NumSubScopes";
+      subScopesCounter.ValueParameter.ActualName = "LayerPopulationSize";
       subScopesCounter.AccumulateParameter.Value = new BoolValue(false);
       subScopesCounter.Successor = countCalculator;
@@ -91,5 +91,5 @@
       countCalculator.Successor = bestSelector;
 
-      bestSelector.NumberOfSelectedSubScopesParameter.ActualName = "NumSubScopes";
+      bestSelector.NumberOfSelectedSubScopesParameter.ActualName = "LayerPopulationSize";
       bestSelector.QualityParameter.ActualName = QualityParameter.Name;
       bestSelector.MaximizationParameter.ActualName = MaximizationParameter.Name;
Index: branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/MergingReducerCalculator.cs
===================================================================
--- branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/MergingReducerCalculator.cs	(revision 11620)
+++ branches/ALPS/HeuristicLab.Algorithms.ALPS/3.3/MergingReducerCalculator.cs	(revision 11676)
@@ -35,6 +35,6 @@
       get { return (ILookupParameter<IntValue>)Parameters["PopulationSize"]; }
     }
-    private ILookupParameter<IntValue> NumSubScopesParameter {
-      get { return (ILookupParameter<IntValue>)Parameters["NumSubScopes"]; }
+    private ILookupParameter<IntValue> LayerPopulationSizeParameter {
+      get { return (ILookupParameter<IntValue>)Parameters["LayerPopulationSize"]; }
     }
 
@@ -50,12 +50,12 @@
       : base() {
       Parameters.Add(new LookupParameter<IntValue>("PopulationSize"));
-      Parameters.Add(new LookupParameter<IntValue>("NumSubScopes"));
+      Parameters.Add(new LookupParameter<IntValue>("LayerPopulationSize"));
     }
 
     public override IOperation Apply() {
       int populationSize = PopulationSizeParameter.ActualValue.Value;
-      int numSubScopes = NumSubScopesParameter.ActualValue.Value;
+      int numSubScopes = LayerPopulationSizeParameter.ActualValue.Value;
 
-      NumSubScopesParameter.ActualValue.Value = Math.Min(populationSize, numSubScopes);
+      LayerPopulationSizeParameter.ActualValue.Value = Math.Min(populationSize, numSubScopes);
 
       return base.Apply();
