Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
08/02/16 18:09:47 (8 years ago)
Author:
gkronber
Message:

#2371: added constructors to allow specification of random seeds for randomly generated regression problem instances (primarily for unit tests)

Location:
trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns
Files:
15 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionEight.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5152    protected override int TestPartitionEnd { get { return 20000; } }
    5253
     54    public int Seed { get; }
     55
     56    public KornsFunctionEight() : this((int)System.DateTime.Now.Ticks) {
     57    }
     58    public KornsFunctionEight(int seed) : base() {
     59      Seed = seed;
     60    }
     61
    5362    protected override List<List<double>> GenerateValues() {
    5463      List<List<double>> data = new List<List<double>>();
    55       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    56       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    57       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    58       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    59       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     64      var rand = new MersenneTwister((uint)Seed);
     65
     66      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     67      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     68      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     69      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     70      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    6071
    6172      double x0, x3, x4;
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionEleven.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionEleven() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionEleven(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
     62
    5463      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     64        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5665      }
    5766
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionFifteen.cs

    r14227 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
    27   public class KornsFunctionFiveteen : ArtificialRegressionDataDescriptor {
     28  public class KornsFunctionFifteen : ArtificialRegressionDataDescriptor {
    2829
    2930    public override string Name { get { return "Korns 15 y = 12.0 - (6.0 * ((tan(X0) / exp(X1)) * (ln(X2) - tan(X3))))"; } }
     
    5051    protected override int TestPartitionStart { get { return 10000; } }
    5152    protected override int TestPartitionEnd { get { return 20000; } }
     53    public int Seed { get; }
    5254
     55
     56    public KornsFunctionFifteen() : this((int)System.DateTime.Now.Ticks) {
     57    }
     58    public KornsFunctionFifteen(int seed) : base() {
     59      Seed = seed;
     60    }
    5361    protected override List<List<double>> GenerateValues() {
    5462      List<List<double>> data = new List<List<double>>();
    55       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    56       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    57       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    58       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    59       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     63      var rand = new MersenneTwister((uint)Seed);
     64
     65      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     66      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     67      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     68      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     69      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    6070
    6171      double x0, x1, x2, x3;
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionFive.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5051    protected override int TestPartitionStart { get { return 10000; } }
    5152    protected override int TestPartitionEnd { get { return 20000; } }
     53    public int Seed { get; }
    5254
     55    public KornsFunctionFive() : this((int)System.DateTime.Now.Ticks) {
     56    }
     57    public KornsFunctionFive(int seed) : base() {
     58      Seed = seed;
     59    }
    5360    protected override List<List<double>> GenerateValues() {
    5461      List<List<double>> data = new List<List<double>>();
    55       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    56       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    57       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    58       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    59       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     62      var rand = new MersenneTwister((uint)Seed);
     63
     64      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     65      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     66      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     67      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     68      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    6069
    6170      double x4;
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionFour.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5051    protected override int TestPartitionEnd { get { return 20000; } }
    5152
     53    public int Seed { get; }
    5254
     55    public KornsFunctionFour() : this((int)System.DateTime.Now.Ticks) {
     56    }
     57    public KornsFunctionFour(int seed) : base() {
     58      Seed = seed;
     59    }
    5360    protected override List<List<double>> GenerateValues() {
    5461      List<List<double>> data = new List<List<double>>();
     62      var rand = new MersenneTwister((uint)Seed);
    5563      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    56         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     64        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5765      }
    5866
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionFourteen.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionFourteen() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionFourteen(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
    5462      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     63        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5664      }
    5765
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionNine.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5152    protected override int TestPartitionStart { get { return 10000; } }
    5253    protected override int TestPartitionEnd { get { return 20000; } }
     54    public int Seed { get; }
    5355
     56    public KornsFunctionNine() : this((int)System.DateTime.Now.Ticks) {
     57    }
     58    public KornsFunctionNine(int seed) : base() {
     59      Seed = seed;
     60    }
    5461    protected override List<List<double>> GenerateValues() {
    5562      List<List<double>> data = new List<List<double>>();
    56       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    57       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    58       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    59       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    60       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     63      var rand = new MersenneTwister((uint)Seed);
     64
     65      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     66      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     67      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     68      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     69      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    6170
    6271      double x0, x1, x2, x3;
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionOne.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5051    protected override int TestPartitionStart { get { return 10000; } }
    5152    protected override int TestPartitionEnd { get { return 20000; } }
     53    public int Seed { get; }
    5254
     55    public KornsFunctionOne() : this((int)System.DateTime.Now.Ticks) {
     56    }
     57    public KornsFunctionOne(int seed) : base() {
     58      Seed = seed;
     59    }
    5360    protected override List<List<double>> GenerateValues() {
    5461      List<List<double>> data = new List<List<double>>();
     62      var rand = new MersenneTwister((uint)Seed);
     63
    5564      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    56         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     65        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5766      }
    5867
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionSeven.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5051    protected override int TestPartitionStart { get { return 10000; } }
    5152    protected override int TestPartitionEnd { get { return 20000; } }
     53    public int Seed { get; }
    5254
     55    public KornsFunctionSeven() : this((int)System.DateTime.Now.Ticks) {
     56    }
     57    public KornsFunctionSeven(int seed) : base() {
     58      Seed = seed;
     59    }
    5360    protected override List<List<double>> GenerateValues() {
    5461      List<List<double>> data = new List<List<double>>();
    55       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    56       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    57       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    58       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    59       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     62      var rand = new MersenneTwister((uint)Seed);
     63
     64      for (int i = 0; i < 5; i++)
     65        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    6066
    6167      double x0;
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionSix.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    5051    protected override int TestPartitionStart { get { return 10000; } }
    5152    protected override int TestPartitionEnd { get { return 20000; } }
     53    public int Seed { get; }
    5254
     55    public KornsFunctionSix() : this((int)System.DateTime.Now.Ticks) {
     56    }
     57    public KornsFunctionSix(int seed) : base() {
     58      Seed = seed;
     59    }
    5360    protected override List<List<double>> GenerateValues() {
    5461      List<List<double>> data = new List<List<double>>();
    55       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
    56       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    57       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    58       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
    59       data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     62      var rand = new MersenneTwister((uint)Seed);
     63
     64      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, 0, 50).ToList()); // note: range is only [0,50] to prevent NaN values (deviates from gp benchmark paper)
     65      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     66      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     67      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
     68      data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    6069
    6170      double x0;
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionTen.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionTen() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionTen(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
     62
    5463      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     64        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5665      }
    5766
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionThirteen.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionThirteen() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionThirteen(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
     62
    5463      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     64        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5665      }
    5766
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionThree.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionThree() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionThree(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
    5462      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     63        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5664      }
    5765
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionTwelve.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionTwelve() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionTwelve(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
     62
    5463      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     64        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5665      }
    5766
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsFunctionTwo.cs

    r14185 r14228  
    2323using System.Collections.Generic;
    2424using System.Linq;
     25using HeuristicLab.Random;
    2526
    2627namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    4950    protected override int TestPartitionStart { get { return 10000; } }
    5051    protected override int TestPartitionEnd { get { return 20000; } }
     52    public int Seed { get; }
    5153
     54    public KornsFunctionTwo() : this((int)System.DateTime.Now.Ticks) {
     55    }
     56    public KornsFunctionTwo(int seed) : base() {
     57      Seed = seed;
     58    }
    5259    protected override List<List<double>> GenerateValues() {
    5360      List<List<double>> data = new List<List<double>>();
     61      var rand = new MersenneTwister((uint)Seed);
     62
    5463      for (int i = 0; i < AllowedInputVariables.Count(); i++) {
    55         data.Add(ValueGenerator.GenerateUniformDistributedValues(TestPartitionEnd, -50, 50).ToList());
     64        data.Add(ValueGenerator.GenerateUniformDistributedValues(rand.Next(), TestPartitionEnd, -50, 50).ToList());
    5665      }
    5766
  • trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/Korns/KornsInstanceProvider.cs

    r14185 r14228  
    2222using System;
    2323using System.Collections.Generic;
     24using HeuristicLab.Random;
    2425
    2526namespace HeuristicLab.Problems.Instances.DataAnalysis {
     
    3738      get { return "McDermott et al., 2012 \"Genetic Programming Needs Better Benchmarks\", in Proc. of GECCO 2012."; }
    3839    }
     40    public int Seed { get; }
     41    public KornsInstanceProvider() : this((int)System.DateTime.Now.Ticks) { }
     42    public KornsInstanceProvider(int seed) : base() {
     43      Seed = seed;
     44    }
    3945
    4046    public override IEnumerable<IDataDescriptor> GetDataDescriptors() {
    4147      List<IDataDescriptor> descriptorList = new List<IDataDescriptor>();
    42       descriptorList.Add(new KornsFunctionOne());
    43       descriptorList.Add(new KornsFunctionTwo());
    44       descriptorList.Add(new KornsFunctionThree());
    45       descriptorList.Add(new KornsFunctionFour());
    46       descriptorList.Add(new KornsFunctionFive());
    47       descriptorList.Add(new KornsFunctionSix());
    48       descriptorList.Add(new KornsFunctionSeven());
    49       descriptorList.Add(new KornsFunctionEight());
    50       descriptorList.Add(new KornsFunctionNine());
    51       descriptorList.Add(new KornsFunctionTen());
    52       descriptorList.Add(new KornsFunctionEleven());
    53       descriptorList.Add(new KornsFunctionTwelve());
    54       descriptorList.Add(new KornsFunctionThirteen());
    55       descriptorList.Add(new KornsFunctionFourteen());
    56       descriptorList.Add(new KornsFunctionFiveteen());
     48      var rand = new MersenneTwister((uint)Seed);
     49      descriptorList.Add(new KornsFunctionOne(rand.Next()));
     50      descriptorList.Add(new KornsFunctionTwo(rand.Next()));
     51      descriptorList.Add(new KornsFunctionThree(rand.Next()));
     52      descriptorList.Add(new KornsFunctionFour(rand.Next()));
     53      descriptorList.Add(new KornsFunctionFive(rand.Next()));
     54      descriptorList.Add(new KornsFunctionSix(rand.Next()));
     55      descriptorList.Add(new KornsFunctionSeven(rand.Next()));
     56      descriptorList.Add(new KornsFunctionEight(rand.Next()));
     57      descriptorList.Add(new KornsFunctionNine(rand.Next()));
     58      descriptorList.Add(new KornsFunctionTen(rand.Next()));
     59      descriptorList.Add(new KornsFunctionEleven(rand.Next()));
     60      descriptorList.Add(new KornsFunctionTwelve(rand.Next()));
     61      descriptorList.Add(new KornsFunctionThirteen(rand.Next()));
     62      descriptorList.Add(new KornsFunctionFourteen(rand.Next()));
     63      descriptorList.Add(new KornsFunctionFifteen(rand.Next()));
    5764      return descriptorList;
    5865    }
Note: See TracChangeset for help on using the changeset viewer.