Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/13/11 13:52:22 (12 years ago)
Author:
gkronber
Message:

#1081 implemented remaining metrics for time series prognosis solutions, added estimation limits fixed training and validation best solution analyzers, implemented overfitting analyzer.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.TimeSeries/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis/3.4/SymbolicTimeSeriesPrognosisModel.cs

    r7154 r7183  
    3939      get { return HeuristicLab.Common.Resources.VSImageLibrary.Function; }
    4040    }
     41    [Storable(DefaultValue = double.MinValue)]
     42    private double lowerEstimationLimit;
     43    [Storable(DefaultValue = double.MaxValue)]
     44    private double upperEstimationLimit;
    4145
    4246    #region properties
     
    7276      this.targetVariables = new string[original.targetVariables.Length];
    7377      Array.Copy(original.targetVariables, this.targetVariables, this.targetVariables.Length);
    74     }
    75     public SymbolicTimeSeriesPrognosisModel(ISymbolicExpressionTree tree, ISymbolicTimeSeriesPrognosisExpressionTreeInterpreter interpreter, IEnumerable<string> targetVariables)
     78      this.lowerEstimationLimit = original.lowerEstimationLimit;
     79      this.upperEstimationLimit = original.upperEstimationLimit;
     80    }
     81    public SymbolicTimeSeriesPrognosisModel(ISymbolicExpressionTree tree, ISymbolicTimeSeriesPrognosisExpressionTreeInterpreter interpreter, IEnumerable<string> targetVariables, double lowerLimit = double.MinValue, double upperLimit = double.MaxValue)
    7682      : base() {
    7783      this.name = ItemName;
     
    7985      this.symbolicExpressionTree = tree;
    8086      this.interpreter = interpreter; this.targetVariables = targetVariables.ToArray();
     87      this.lowerEstimationLimit = lowerLimit;
     88      this.upperEstimationLimit = upperLimit;
    8189    }
    8290
     
    95103          for (int c = 0; c < components.Length; c++) {
    96104            enumerator.MoveNext();
    97             components[c] = enumerator.Current;
     105            components[c] = Math.Min(upperEstimationLimit, Math.Max(lowerEstimationLimit, enumerator.Current));
    98106          }
    99107          l.Add(components);
Note: See TracChangeset for help on using the changeset viewer.