Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
08/18/10 14:58:56 (14 years ago)
Author:
mkommend
Message:

Adapted SymbolicRegression classes to new grammars (ticket #1028).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/SymbolicRegressionSolution.cs

    r4068 r4250  
    2626using HeuristicLab.Core;
    2727using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HeuristicLab.Problems.DataAnalysis.Symbolic.Symbols;
    2829
    2930namespace HeuristicLab.Problems.DataAnalysis.Regression.Symbolic {
     
    5051
    5152    protected override void RecalculateEstimatedValues() {
    52       estimatedValues = (from x in Model.GetEstimatedValues(ProblemData, 0, ProblemData.Dataset.Rows)
    53                          let boundedX = Math.Min(UpperEstimationLimit, Math.Max(LowerEstimationLimit, x))
    54                          select double.IsNaN(boundedX) ? UpperEstimationLimit : boundedX).ToList();
     53      int minLag = 0;
     54      var laggedTreeNodes = Model.SymbolicExpressionTree.IterateNodesPrefix().OfType<LaggedVariableTreeNode>();
     55      if (laggedTreeNodes.Any())
     56        minLag = laggedTreeNodes.Min(node => node.Lag);
     57      IEnumerable<double> calculatedValues =
     58          from x in Model.GetEstimatedValues(ProblemData, 0 - minLag, ProblemData.Dataset.Rows)
     59          let boundedX = Math.Min(UpperEstimationLimit, Math.Max(LowerEstimationLimit, x))
     60          select double.IsNaN(boundedX) ? UpperEstimationLimit : boundedX;
     61      estimatedValues = Enumerable.Repeat(double.NaN, Math.Abs(minLag)).Concat(calculatedValues).ToList();
    5562      OnEstimatedValuesChanged();
    5663    }
Note: See TracChangeset for help on using the changeset viewer.