Changeset 17958 for trunk/HeuristicLab.Problems.DataAnalysis/3.4
- Timestamp:
- 04/22/21 14:59:58 (3 years ago)
- Location:
- trunk/HeuristicLab.Problems.DataAnalysis/3.4
- Files:
-
- 4 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/HeuristicLab.Problems.DataAnalysis/3.4/HeuristicLab.Problems.DataAnalysis-3.4.csproj
r17931 r17958 143 143 <Compile Include="Implementation\Interval\Interval.cs" /> 144 144 <Compile Include="Implementation\Interval\IntervalCollection.cs" /> 145 <Compile Include="Implementation\Interval\IShapeConstrainedRegressionProblem.cs" /> 146 <Compile Include="Implementation\Interval\IShapeConstrainedRegressionProblemData.cs" /> 145 147 <Compile Include="Implementation\Interval\ShapeConstraint.cs" /> 148 <Compile Include="Implementation\Interval\ShapeConstrainedRegressionProblemData.cs" /> 149 <Compile Include="Implementation\Interval\ShapeConstrainedRegressionProblem.cs" /> 146 150 <Compile Include="Implementation\Interval\ShapeConstraintsParser.cs" /> 147 151 <Compile Include="Implementation\Regression\ConfidenceBoundRegressionSolution.cs" /> -
trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs
r17911 r17958 35 35 protected const string TargetVariableParameterName = "TargetVariable"; 36 36 protected const string VariableRangesParameterName = "VariableRanges"; 37 protected const string ShapeConstraintsParameterName = "ShapeConstraints";38 37 public string Filename { get; set; } 39 38 … … 78 77 defaultDataset = new Dataset(new string[] { "y", "x" }, kozaF1); 79 78 defaultDataset.Name = "Fourth-order Polynomial Function Benchmark Dataset"; 80 defaultDataset.Description = "f(x) = x^4 + x^3 + x^2 + x ^1";79 defaultDataset.Description = "f(x) = x^4 + x^3 + x^2 + x"; 81 80 defaultAllowedInputVariables = new List<string>() { "x" }; 82 81 defaultTargetVariable = "y"; … … 94 93 problemData.Parameters.Add(new ConstrainedValueParameter<StringValue>(TargetVariableParameterName, new ItemSet<StringValue>())); 95 94 problemData.Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, "", new IntervalCollection())); 96 problemData.Parameters.Add(new FixedValueParameter<ShapeConstraints>(ShapeConstraintsParameterName, "", new ShapeConstraints()));97 95 emptyProblemData = problemData; 98 96 } … … 101 99 #region parameter properties 102 100 public IConstrainedValueParameter<StringValue> TargetVariableParameter => (IConstrainedValueParameter<StringValue>)Parameters[TargetVariableParameterName]; 103 public IFixedValueParameter<ShapeConstraints> ShapeConstraintsParameter => (IFixedValueParameter<ShapeConstraints>)Parameters[ShapeConstraintsParameterName];104 101 public IFixedValueParameter<IntervalCollection> VariableRangesParameter => (IFixedValueParameter<IntervalCollection>)Parameters[VariableRangesParameterName]; 105 102 #endregion … … 109 106 get => VariableRangesParameter.Value; 110 107 } 111 112 113 public ShapeConstraints ShapeConstraints => ShapeConstraintsParameter.Value;114 115 108 116 109 public string TargetVariable { … … 140 133 Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, intervalCollection)); 141 134 } 142 if (Parameters.ContainsKey("IntervalConstraints")) {143 var param = (IFixedValueParameter<ShapeConstraints>)Parameters["IntervalConstraints"];144 Parameters.Remove(param);145 Parameters.Add(new FixedValueParameter<ShapeConstraints>(ShapeConstraintsParameterName, param.Value));146 }147 if (!Parameters.ContainsKey(ShapeConstraintsParameterName)) {148 Parameters.Add(new FixedValueParameter<ShapeConstraints>(ShapeConstraintsParameterName, new ShapeConstraints()));149 }150 135 151 136 RegisterParameterEvents(); … … 174 159 public RegressionProblemData(IDataset dataset, IEnumerable<string> allowedInputVariables, string targetVariable, 175 160 IEnumerable<ITransformation> transformations = null, 176 IntervalCollection variableRanges = null, 177 ShapeConstraints shapeConstraints = null) 161 IntervalCollection variableRanges = null) 178 162 : base(dataset, allowedInputVariables, transformations ?? Enumerable.Empty<ITransformation>()) { 179 163 var variables = InputVariables.Select(x => x.AsReadOnly()).ToList(); … … 183 167 } 184 168 Parameters.Add(new FixedValueParameter<IntervalCollection>(VariableRangesParameterName, variableRanges)); 185 186 if (shapeConstraints == null) {187 shapeConstraints = new ShapeConstraints();188 }189 Parameters.Add(new FixedValueParameter<ShapeConstraints>(ShapeConstraintsParameterName, shapeConstraints));190 RegisterParameterEvents();191 169 } 192 170 private void RegisterParameterEvents() { 193 171 TargetVariableParameter.ValueChanged += new EventHandler(Parameter_ValueChanged); 194 // VariableRanges a nd ShapeConstraints are fixed parameters172 // VariableRanges are fixed parameters 195 173 } 196 174 private void Parameter_ValueChanged(object sender, EventArgs e) { -
trunk/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/ShapeConstraints.cs
r17902 r17958 77 77 public event EventHandler Changed; 78 78 79 79 80 private void RaiseChanged() { 80 81 var handlers = Changed; -
trunk/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs
r17902 r17958 29 29 public interface IRegressionProblemData : IDataAnalysisProblemData { 30 30 string TargetVariable { get; set; } 31 32 31 IntervalCollection VariableRanges { get; } 33 ShapeConstraints ShapeConstraints { get; }34 35 32 IEnumerable<double> TargetVariableValues { get; } 36 33 IEnumerable<double> TargetVariableTrainingValues { get; }
Note: See TracChangeset
for help on using the changeset viewer.