Index: /trunk/sources/HeuristicLab.Problems.QuadraticAssignment.Views/3.3/QuadraticAssignmentProblemView.Designer.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.QuadraticAssignment.Views/3.3/QuadraticAssignmentProblemView.Designer.cs	(revision 7877)
+++ /trunk/sources/HeuristicLab.Problems.QuadraticAssignment.Views/3.3/QuadraticAssignmentProblemView.Designer.cs	(revision 7878)
@@ -68,6 +68,8 @@
       // parameterCollectionView
       // 
-      this.parameterCollectionView.Location = new System.Drawing.Point(0, 3);
-      this.parameterCollectionView.Size = new System.Drawing.Size(497, 269);
+      this.parameterCollectionView.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)));
+      this.parameterCollectionView.Dock = System.Windows.Forms.DockStyle.Fill;
+      this.parameterCollectionView.Location = new System.Drawing.Point(3, 3);
+      this.parameterCollectionView.Size = new System.Drawing.Size(497, 274);
       // 
       // nameTextBox
@@ -78,13 +80,13 @@
       // tabControl
       // 
-      this.tabControl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
-                  | System.Windows.Forms.AnchorStyles.Left)
-                  | System.Windows.Forms.AnchorStyles.Right)));
+      this.tabControl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
       this.tabControl.Controls.Add(this.problemTabPage);
       this.tabControl.Controls.Add(this.visualizationTabPage);
-      this.tabControl.Location = new System.Drawing.Point(0, 29);
+      this.tabControl.Location = new System.Drawing.Point(0, 27);
       this.tabControl.Name = "tabControl";
       this.tabControl.SelectedIndex = 0;
-      this.tabControl.Size = new System.Drawing.Size(511, 304);
+      this.tabControl.Size = new System.Drawing.Size(511, 306);
       this.tabControl.TabIndex = 8;
       // 
@@ -95,5 +97,5 @@
       this.problemTabPage.Name = "problemTabPage";
       this.problemTabPage.Padding = new System.Windows.Forms.Padding(3);
-      this.problemTabPage.Size = new System.Drawing.Size(503, 278);
+      this.problemTabPage.Size = new System.Drawing.Size(503, 280);
       this.problemTabPage.TabIndex = 0;
       this.problemTabPage.Text = "Problem";
@@ -106,5 +108,5 @@
       this.visualizationTabPage.Name = "visualizationTabPage";
       this.visualizationTabPage.Padding = new System.Windows.Forms.Padding(3);
-      this.visualizationTabPage.Size = new System.Drawing.Size(503, 278);
+      this.visualizationTabPage.Size = new System.Drawing.Size(503, 280);
       this.visualizationTabPage.TabIndex = 1;
       this.visualizationTabPage.Text = "Visualization";
@@ -118,5 +120,5 @@
       this.qapView.Location = new System.Drawing.Point(3, 3);
       this.qapView.Name = "qapView";
-      this.qapView.Size = new System.Drawing.Size(497, 272);
+      this.qapView.Size = new System.Drawing.Size(497, 245);
       this.qapView.TabIndex = 0;
       this.qapView.Weights = null;
@@ -128,5 +130,4 @@
       this.Name = "QuadraticAssignmentProblemView";
       this.problemInstanceSplitContainer.Panel1.ResumeLayout(false);
-      this.problemInstanceSplitContainer.Panel1.PerformLayout();
       this.problemInstanceSplitContainer.Panel2.ResumeLayout(false);
       this.problemInstanceSplitContainer.Panel2.PerformLayout();
Index: /trunk/sources/HeuristicLab.Problems.QuadraticAssignment.Views/3.3/QuadraticAssignmentProblemView.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.QuadraticAssignment.Views/3.3/QuadraticAssignmentProblemView.cs	(revision 7877)
+++ /trunk/sources/HeuristicLab.Problems.QuadraticAssignment.Views/3.3/QuadraticAssignmentProblemView.cs	(revision 7878)
@@ -37,7 +37,4 @@
     public QuadraticAssignmentProblemView() {
       InitializeComponent();
-      Controls.Remove(parameterCollectionView);
-      parameterCollectionView.Dock = DockStyle.Fill;
-      problemTabPage.Controls.Add(parameterCollectionView);
     }
 
Index: /trunk/sources/HeuristicLab.Problems.QuadraticAssignment/3.3/LocalImprovement/QAPExhaustiveSwap2LocalImprovement.cs
===================================================================
--- /trunk/sources/HeuristicLab.Problems.QuadraticAssignment/3.3/LocalImprovement/QAPExhaustiveSwap2LocalImprovement.cs	(revision 7877)
+++ /trunk/sources/HeuristicLab.Problems.QuadraticAssignment/3.3/LocalImprovement/QAPExhaustiveSwap2LocalImprovement.cs	(revision 7878)
@@ -100,12 +100,6 @@
     }
 
-    public override IOperation Apply() {
-      int maxIterations = MaximumIterationsParameter.ActualValue.Value;
-      Permutation assignment = AssignmentParameter.ActualValue;
-      bool maximization = MaximizationParameter.ActualValue.Value;
-      DoubleMatrix weights = WeightsParameter.ActualValue;
-      DoubleMatrix distances = DistancesParameter.ActualValue;
-
-      double evaluatedSolutions = 0.0;
+    public static double Improve(Permutation assignment, double quality, DoubleMatrix weights, DoubleMatrix distances, bool maximization, int maxIterations, out double evaluatedSolutions) {
+      evaluatedSolutions = 0.0;
       double evalSolPerMove = 4.0 / assignment.Length;
 
@@ -124,7 +118,20 @@
         if (bestMove == null) break;
         Swap2Manipulator.Apply(assignment, bestMove.Index1, bestMove.Index2);
-        QualityParameter.ActualValue.Value += bestQuality;
+        quality += bestQuality;
       }
-      EvaluatedSolutionsParameter.ActualValue.Value += (int)Math.Ceiling(evaluatedSolutions);
+      return quality;
+    }
+
+    public override IOperation Apply() {
+      int maxIterations = MaximumIterationsParameter.ActualValue.Value;
+      Permutation assignment = AssignmentParameter.ActualValue;
+      bool maximization = MaximizationParameter.ActualValue.Value;
+      DoubleMatrix weights = WeightsParameter.ActualValue;
+      DoubleMatrix distances = DistancesParameter.ActualValue;
+      double quality = QualityParameter.ActualValue.Value;
+
+      double evaluations;
+      QualityParameter.ActualValue.Value = Improve(assignment, quality, weights, distances, maximization, maxIterations, out evaluations);
+      EvaluatedSolutionsParameter.ActualValue.Value += (int)Math.Ceiling(evaluations);
       return base.Apply();
     }
Index: /trunk/sources/HeuristicLab.Tests/HeuristicLab.Problems.QuadraticAssignment-3.3/QAPLIBInstancesTest.cs
===================================================================
--- /trunk/sources/HeuristicLab.Tests/HeuristicLab.Problems.QuadraticAssignment-3.3/QAPLIBInstancesTest.cs	(revision 7877)
+++ /trunk/sources/HeuristicLab.Tests/HeuristicLab.Problems.QuadraticAssignment-3.3/QAPLIBInstancesTest.cs	(revision 7878)
@@ -22,5 +22,4 @@
 using System;
 using System.Collections.Generic;
-using System.IO;
 using System.Linq;
 using System.Text;
@@ -176,5 +175,4 @@
       var qap = new QuadraticAssignmentProblem();
       var failedInstances = new StringBuilder();
-      string tempPath = Path.GetTempPath();
 
       var instances = provider.GetDataDescriptors();
@@ -196,5 +194,4 @@
       var qap = new QuadraticAssignmentProblem();
       var failedInstances = new StringBuilder();
-      string tempPath = Path.GetTempPath();
 
       var instances = provider.GetDataDescriptors();
