Index: branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/HeuristicLab.Problems.Instances.Regression-3.4.csproj
===================================================================
--- branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/HeuristicLab.Problems.Instances.Regression-3.4.csproj	(revision 7603)
+++ branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/HeuristicLab.Problems.Instances.Regression-3.4.csproj	(revision 7610)
@@ -40,4 +40,5 @@
     <Reference Include="HeuristicLab.Common-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" />
     <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" />
+    <Reference Include="HeuristicLab.Optimization-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" />
     <Reference Include="HeuristicLab.PluginInfrastructure-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" />
     <Reference Include="HeuristicLab.Random-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL" />
@@ -52,4 +53,5 @@
   <ItemGroup>
     <Compile Include="Keijzer\KeijzerFunctionEight.cs" />
+    <Compile Include="Plugin.cs" />
     <Compile Include="ResourceRegressionInstanceProvider.cs" />
     <Compile Include="ArtificialRegressionInstanceProvider.cs" />
Index: branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Keijzer/KeijzerInstanceProvider.cs
===================================================================
--- branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Keijzer/KeijzerInstanceProvider.cs	(revision 7603)
+++ branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Keijzer/KeijzerInstanceProvider.cs	(revision 7610)
@@ -20,9 +20,9 @@
 #endregion
 
-
 using System;
 using System.Collections.Generic;
+
 namespace HeuristicLab.Problems.Instances.Regression {
-  public class KeijzerInstanceProvider : ArtificialRegressionInstanceProvider {
+  public class KeijzerInstanceProvider : ArtificialRegressionInstanceProvider, IProblemInstanceProvider<RegressionData> {
     public override string Name {
       get { return "Keijzer Benchmark Problems"; }
@@ -43,4 +43,72 @@
       return descriptorList;
     }
+
+    /*#region delete after test
+    public RegressionData LoadData(IDataDescriptor descriptor) {
+      throw new NotImplementedException();
+    }
+
+    public RegressionData LoadData(string path) {
+      TableFileParser csvFileParser = new TableFileParser();
+      csvFileParser.Parse(path);
+
+      RegressionData regData = new RegressionData();
+      regData.Name = path;
+      regData.InputVariables = new List<string>(csvFileParser.VariableNames);
+      regData.TargetVariable = csvFileParser.VariableNames.Last();
+      //convert to multidimensional array
+      double[][] values = csvFileParser.Values.Cast<double[]>().ToArray();
+      regData.Values = new double[values.GetLength(0), values.GetLength(1)];
+      for (int i = 0; i < values.GetLength(0); i++) {
+        for (int j = 0; j < values.GetLength(1); j++) {
+          regData.Values[i, j] = values[i][j];
+        }
+      }
+
+      int trainingPartEnd = csvFileParser.Rows * 2 / 3;
+      regData.TrainingPartitionStart = 0;
+      regData.TrainingPartitionEnd = trainingPartEnd;
+      regData.TestPartitionStart = trainingPartEnd;
+      regData.TestPartitionEnd = csvFileParser.Rows;
+      return regData;
+    }
+
+    public void SaveData(RegressionData instance, string path) {
+      StringBuilder strBuilder = new StringBuilder();
+
+      foreach (var variable in instance.InputVariables) {
+        strBuilder.Append(variable + ";");
+      }
+      strBuilder.Remove(strBuilder.Length - 1, 1);
+      strBuilder.AppendLine();
+
+      double[,] values = instance.Values;
+
+      for (int i = 0; i < values.GetLength(0); i++) {
+        for (int j = 0; j < values.GetLength(1); j++) {
+          strBuilder.Append(values[i, j] + ";");
+        }
+        strBuilder.Remove(strBuilder.Length - 1, 1);
+        strBuilder.AppendLine();
+      }
+
+      using (StreamWriter writer = new StreamWriter(path)) {
+        writer.Write(strBuilder);
+      }
+    }
+    #endregion
+
+    #region IProblemInstanceProvider<RegressionData> Members
+
+    public IProblemInstanceConsumer<RegressionData> Consumer {
+      get {
+        return new RegressionProblem();
+      }
+      set {
+        throw new NotImplementedException();
+      }
+    }
+
+    #endregion       */
   }
 }
Index: branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Properties/AssemblyInfo.cs
===================================================================
--- branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Properties/AssemblyInfo.cs	(revision 7603)
+++ branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/Properties/AssemblyInfo.cs	(revision 7610)
@@ -1,3 +1,24 @@
-﻿using System.Reflection;
+﻿#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 System.Reflection;
 using System.Runtime.CompilerServices;
 using System.Runtime.InteropServices;
@@ -6,10 +27,10 @@
 // set of attributes. Change these attribute values to modify the information
 // associated with an assembly.
-[assembly: AssemblyTitle("HeuristicLab.Problems.Instances.Regression-3.4")]
+[assembly: AssemblyTitle("HeuristicLab.Problems.Instances.Regression")]
 [assembly: AssemblyDescription("")]
 [assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("HeuristicLab.Problems.Instances.Regression-3.4")]
-[assembly: AssemblyCopyright("Copyright ©  2012")]
+[assembly: AssemblyCompany("HEAL")]
+[assembly: AssemblyProduct("HeuristicLab")]
+[assembly: AssemblyCopyright("(c) 2002-2012 HEAL")]
 [assembly: AssemblyTrademark("")]
 [assembly: AssemblyCulture("")]
@@ -33,4 +54,4 @@
 // by using the '*' as shown below:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: AssemblyVersion("3.4.0.0")]
+[assembly: AssemblyFileVersion("3.4.0.7603")]
Index: branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/RegressionInstanceProvider.cs
===================================================================
--- branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/RegressionInstanceProvider.cs	(revision 7603)
+++ branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/RegressionInstanceProvider.cs	(revision 7610)
@@ -21,4 +21,5 @@
 
 using System;
+using System.Collections;
 using System.Collections.Generic;
 using System.IO;
@@ -33,13 +34,20 @@
 
       RegressionData regData = new RegressionData();
-      regData.Name = path;
+      int pos = path.LastIndexOf('\\');
+      if (pos < 0)
+        regData.Name = path;
+      else {
+        pos++;
+        regData.Name = path.Substring(pos, path.Length - pos);
+      }
       regData.InputVariables = new List<string>(csvFileParser.VariableNames);
       regData.TargetVariable = csvFileParser.VariableNames.Last();
+      regData.AllowedInputVariables = regData.InputVariables.Where(x => !x.Equals(regData.TargetVariable));
       //convert to multidimensional array
-      double[][] values = csvFileParser.Values.Cast<double[]>().ToArray();
-      regData.Values = new double[values.GetLength(0), values.GetLength(1)];
-      for (int i = 0; i < values.GetLength(0); i++) {
-        for (int j = 0; j < values.GetLength(1); j++) {
-          regData.Values[i, j] = values[i][j];
+      List<IList> values = csvFileParser.Values;
+      regData.Values = new double[values.First().Count, values.Count];
+      for (int i = 0; i < values.Count; i++) {
+        for (int j = 0; j < values.First().Count; j++) {
+          regData.Values[j, i] = (double)values[i][j];
         }
       }
Index: branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/ValueGenerator.cs
===================================================================
--- branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/ValueGenerator.cs	(revision 7603)
+++ branches/ProblemInstancesRegressionAndClassification/HeuristicLab.Problems.Instances.Regression/3.4/ValueGenerator.cs	(revision 7610)
@@ -30,8 +30,8 @@
 
     public static double[,] Transformation(List<List<double>> data) {
-      double[,] values = new double[data.Count, data.First().Count];
+      double[,] values = new double[data.First().Count, data.Count];
       for (int i = 0; i < values.GetLength(0); i++) {
         for (int j = 0; j < values.GetLength(1); j++) {
-          values[i, j] = data[i][j];
+          values[i, j] = data[j][i];
         }
       }
