- Timestamp:
- 02/25/20 07:41:01 (5 years ago)
- Location:
- branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Classification/TimeSeries/TimeSeriesInstanceProvider.cs
r17418 r17448 30 30 using System.Linq; 31 31 using HeuristicLab.Problems.DataAnalysis; 32 33 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 32 34 33 35 namespace HeuristicLab.Problems.Instances.DataAnalysis { … … 160 162 var numbers = variable 161 163 .Split(',') 162 .Select(ParseNumber) 163 .ToList(); 164 inputsData[i].Add(new DoubleVector(numbers)); 164 .Select(ParseNumber); 165 inputsData[i].Add(DoubleVector.Build.DenseOfEnumerable(numbers)); 165 166 } 166 167 -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/HeuristicLab.Problems.Instances.DataAnalysis-3.3.csproj
r17418 r17448 114 114 <SpecificVersion>False</SpecificVersion> 115 115 <HintPath>..\..\bin\ALGLIB-3.7.0.dll</HintPath> 116 </Reference> 117 <Reference Include="MathNet.Numerics, Version=4.9.0.0, Culture=neutral, processorArchitecture=MSIL"> 118 <SpecificVersion>False</SpecificVersion> 119 <HintPath>..\..\bin\MathNet.Numerics.dll</HintPath> 116 120 </Reference> 117 121 <Reference Include="System" /> -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Plugin.cs.frame
r17184 r17448 35 35 [PluginDependency("HeuristicLab.Problems.Instances", "3.3")] 36 36 [PluginDependency("HeuristicLab.Random", "3.3")] 37 [PluginDependency("HeuristicLab.MathNet.Numerics", "4.9.0")] 37 38 public class HeuristicLabProblemsInstancesDataAnalysisPlugin : PluginBase { 38 39 } -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/AzzaliBenchmark1.cs
r17418 r17448 1 using System; 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 using System; 2 23 using System.Collections; 3 24 using System.Collections.Generic; … … 7 28 using HeuristicLab.Problems.DataAnalysis; 8 29 using HeuristicLab.Random; 30 using MathNet.Numerics.Statistics; 31 32 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 9 33 10 34 namespace HeuristicLab.Problems.Instances.DataAnalysis { -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/AzzaliBenchmark2.cs
r17418 r17448 1 using System; 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 using System; 2 23 using System.Collections; 3 24 using System.Collections.Generic; … … 7 28 using HeuristicLab.Problems.DataAnalysis; 8 29 using HeuristicLab.Random; 30 using MathNet.Numerics.Statistics; 31 32 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 9 33 10 34 namespace HeuristicLab.Problems.Instances.DataAnalysis { 11 35 public class AzzaliBenchmark2 : ArtificialRegressionDataDescriptor { 12 public override string Name { get { return "Azzali Benchmark2 B2 = ((X3 + X1) / mean(X4)) * X2"; } }36 public override string Name { get { return "Azzali Benchmark2 B2 = ((X3 + X1) / CumMean(X4)) * X2"; } } 13 37 public override string Description { get { return "I. Azzali, L. Vanneschi, S. Silva, I. Bakurov, and M. Giacobini, “A Vectorial Approach to Genetic Programming,” EuroGP, pp. 213–227, 2019."; } } 14 38 … … 47 71 var x4 = rand.NextDoubleVector(-5, +5, 10); 48 72 49 var b2 = ((x3 + x1) / x4.CumulativeMean()) * x2; 73 var cumMean = x4.MapIndexed((j, v) => x4.SubVector(0, j + 1).Mean()); 74 var b2 = ((x3 + x1) / cumMean) * x2; 50 75 51 76 x1Column.Add(x1); -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/AzzaliBenchmark3.cs
r17418 r17448 1 using System; 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 using System; 2 23 using System.Collections; 3 24 using System.Collections.Generic; … … 8 29 using HeuristicLab.Random; 9 30 31 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 32 10 33 namespace HeuristicLab.Problems.Instances.DataAnalysis { 11 34 public class AzzaliBenchmark3 : ArtificialRegressionDataDescriptor { 12 public override string Name { get { return "Azzali Benchmark2 B3 = "; } }35 public override string Name { get { return "Azzali Benchmark2 B3 = CumMin[3,3] * (X2 / X3) + X4"; } } 13 36 public override string Description { get { return "I. Azzali, L. Vanneschi, S. Silva, I. Bakurov, and M. Giacobini, “A Vectorial Approach to Genetic Programming,” EuroGP, pp. 213–227, 2019."; } } 14 37 … … 49 72 var x5 = rand.NextDouble(0, 1); 50 73 51 int p = 3, q = 3;52 var cumulativeMin = new DoubleVector(74 const int p = 3, q = 3; 75 var cumulativeMin = DoubleVector.Build.DenseOfEnumerable( 53 76 Enumerable.Range(0, x1.Count) 54 77 .Select(idx => Enumerable.Range(idx - p, q)) // build index ranges for each target entry -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/AzzaliKorns5.cs
r17418 r17448 1 using System; 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 using System; 2 23 using System.Collections; 3 24 using System.Collections.Generic; … … 8 29 using HeuristicLab.Random; 9 30 31 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 32 10 33 namespace HeuristicLab.Problems.Instances.DataAnalysis { 11 34 public class AzzaliKorns5 : ArtificialRegressionDataDescriptor { 12 public override string Name { get { return "Azzali Korns5 K5 = "; } }35 public override string Name { get { return "Azzali Korns5 K5 = 3.0 + 2.23 * log(X4)"; } } 13 36 public override string Description { get { return "I. Azzali, L. Vanneschi, S. Silva, I. Bakurov, and M. Giacobini, “A Vectorial Approach to Genetic Programming,” EuroGP, pp. 213–227, 2019."; } } 14 37 … … 47 70 var x4 = rand.NextDoubleVector(-50, +50, 10); 48 71 49 var k5 = 3 + 2.13 * new DoubleVector(x4.Select(d4 => Math.Log(d4)));72 var k5 = 3 + 2.13 * x4.PointwiseLog(); 50 73 51 74 x1Column.Add(x1); -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/RandomExtensions.cs
r17400 r17448 1 using HeuristicLab.Core; 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 using HeuristicLab.Core; 2 23 using HeuristicLab.Problems.DataAnalysis; 24 25 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 3 26 4 27 namespace HeuristicLab.Problems.Instances.DataAnalysis { … … 12 35 values[i] = rand.NextDouble(min, max); 13 36 } 14 return new DoubleVector(values);37 return DoubleVector.Build.Dense(values); 15 38 } 16 39 } -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/VectorData/VectorDataTestOne.cs
r17419 r17448 27 27 using HeuristicLab.Problems.DataAnalysis; 28 28 using HeuristicLab.Random; 29 using MathNet.Numerics.Statistics; 30 31 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 29 32 30 33 namespace HeuristicLab.Problems.Instances.DataAnalysis { -
branches/3040_VectorBasedGP/HeuristicLab.Problems.Instances.DataAnalysis/3.3/TableFileParser.cs
r17414 r17448 30 30 using HeuristicLab.Problems.DataAnalysis; 31 31 32 using DoubleVector = MathNet.Numerics.LinearAlgebra.Vector<double>; 33 32 34 namespace HeuristicLab.Problems.Instances.DataAnalysis { 33 35 public class TableFileParser : Progress<long> { // reports the number of bytes read … … 272 274 var vectorList = new List<DoubleVector>(stringList.Count); 273 275 for (int j = 0; j < doubles.Length; j++) { 274 vectorList.Add( new DoubleVector(doubles[j]));276 vectorList.Add(DoubleVector.Build.Dense(doubles[j])); 275 277 } 276 278
Note: See TracChangeset
for help on using the changeset viewer.