- Timestamp:
- 06/29/18 09:07:03 (7 years ago)
- Location:
- branches/EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteAdaptiveSamplingAlgorithm.cs
r15343 r15976 40 40 private const string RemoveDuplicatesParamterName = "PerturbDuplicates"; 41 41 private const string MaxModelSizeParameterName = "Maximal Model Size"; 42 private const string InitialDatasetParameterName = "SampleSet"; 42 43 #endregion 43 44 … … 53 54 public IFixedValueParameter<BoolValue> RemoveDuplicatesParameter => (IFixedValueParameter<BoolValue>)Parameters[RemoveDuplicatesParamterName]; 54 55 public IFixedValueParameter<IntValue> MaxModelSizeParameter => (IFixedValueParameter<IntValue>)Parameters[MaxModelSizeParameterName]; 56 public IValueParameter<IDataset> InitialDatasetParameter => (IValueParameter<IDataset>)Parameters[InitialDatasetParameterName]; 55 57 #endregion 56 58 … … 67 69 public int MaxModelSize => MaxModelSizeParameter.Value.Value; 68 70 private SolutionsCreator SolutionsCreator => OperatorGraph.Iterate().OfType<SolutionsCreator>().First(); 71 public IDataset InitialDataset => InitialDatasetParameter.Value; 69 72 #endregion 70 73 … … 168 171 Parameters.Add(new FixedValueParameter<BoolValue>(RemoveDuplicatesParamterName, "Whether (almost) duplicate points in the dataset should be perturbed before evaluation (this greatly increases numerical stability for some model types)", new BoolValue(true))); 169 172 Parameters.Add(new FixedValueParameter<IntValue>("Maximal Model Size", "The maximum number of sample points used to build the model", new IntValue(-1))); 173 Parameters.Add(new ValueParameter<IDataset>(InitialDatasetParameterName, "The initial dataset that should be built upon.", new ModifiableDataset())); 170 174 #endregion 171 175 -
branches/EfficientGlobalOptimization/HeuristicLab.Algorithms.EGO/DiscreteEGO/DiscreteSampleCollector.cs
r15343 r15976 20 20 #endregion 21 21 22 using System.Collections.Generic; 23 using System.Linq; 22 24 using HeuristicLab.Common; 23 25 using HeuristicLab.Core; … … 59 61 if (data.Columns != vector.Length + 1) { 60 62 if (data.Columns != 0 || data.Rows != 0) throw new OperatorExecutionException(this, "dataset columns do not match samplesize+1"); 61 for (var i = 0; i < vector.Length; i++)62 data.AddVariable("input" + i, new double[0]);63 data .AddVariable("output", new double[0]);64 } 65 AddRow(data, vector, quality); 66 return base.InstrumentedApply(); ;63 var variableNames = vector.Select((x, i) => string.Format("input" + i)).Concat("output".ToEnumerable()); 64 var variableValues = vector.Select(x => (double)x).Concat(quality.ToEnumerable()).Select(x => new List<double> { x }); 65 data = DatasetParameter.ActualValue = new ModifiableDataset(variableNames, variableValues); 66 } else AddRow(data, vector, quality); 67 68 return base.InstrumentedApply(); 67 69 } 68 70
Note: See TracChangeset
for help on using the changeset viewer.