Changeset 4193


Ignore:
Timestamp:
08/11/10 12:59:53 (9 years ago)
Author:
gkronber
Message:

Created a feature/exploration branch for new data analysis features #1142

Location:
branches/DataAnalysis/HeuristicLab.Problems.DataAnalysis
Files:
6 added
4 edited
1 copied

Legend:

Unmodified
Added
Removed
  • branches/DataAnalysis/HeuristicLab.Problems.DataAnalysis/3.3/DataAnalysisSolution.cs

    r4068 r4193  
    129129    public event EventHandler ProblemDataChanged;
    130130    protected virtual void OnProblemDataChanged() {
     131      RecalculateEstimatedValues();
    131132      var listeners = ProblemDataChanged;
    132133      if (listeners != null)
  • branches/DataAnalysis/HeuristicLab.Problems.DataAnalysis/3.3/HeuristicLab.Problems.DataAnalysis-3.3.csproj

    r4112 r4193  
    133133    <Compile Include="Interfaces\IOnlineEvaluator.cs" />
    134134    <Compile Include="MatrixExtensions.cs" />
     135    <Compile Include="Operators\DynOpEqHistogramInitializer.cs" />
     136    <Compile Include="Operators\DynOpEqComparator.cs" />
     137    <Compile Include="Operators\DynamicDepthLimitComparator.cs" />
    135138    <Compile Include="Operators\WeightedParentsQualityVarianceComparator.cs" />
    136139    <Compile Include="Properties\AssemblyInfo.cs" />
     
    145148    <Compile Include="SupportVectorMachine\SupportVectorMachineUtil.cs" />
    146149    <Compile Include="Symbolic\ArithmeticExpressionGrammar.cs" />
     150    <Compile Include="Symbolic\BasicExpressionGrammar.cs" />
    147151    <Compile Include="Symbolic\FullFunctionalExpressionGrammar.cs" />
    148152    <Compile Include="Symbolic\ISymbolicExpressionTreeInterpreter.cs" />
     
    152156    <Compile Include="Symbolic\Symbols\Constant.cs" />
    153157    <Compile Include="Symbolic\Symbols\ConstantTreeNode.cs" />
     158    <Compile Include="Symbolic\Symbols\DifferentialVariable.cs" />
     159    <Compile Include="Symbolic\Symbols\DifferentialVariableTreeNode.cs" />
    154160    <Compile Include="Symbolic\Symbols\LaggedVariable.cs" />
    155161    <Compile Include="Symbolic\Symbols\LaggedVariableTreeNode.cs" />
  • branches/DataAnalysis/HeuristicLab.Problems.DataAnalysis/3.3/Operators/WeightedParentsQualityVarianceComparator.cs

    r4131 r4193  
    125125
    126126      bool result = false;
    127       if (maximization)
    128         result = righttail < ConfidenceIntervalParameter.ActualValue.Value;
    129       else
    130         result = lefttail < ConfidenceIntervalParameter.ActualValue.Value;
     127      // reject only if the child is significantly worse
     128      if (maximization) {
     129        if (bothtails > ConfidenceIntervalParameter.ActualValue.Value) result = true;
     130        else if (leftQuality > bestParentQuality) result = true;
     131        else result = false;
     132      } else {
     133        if (bothtails > ConfidenceIntervalParameter.ActualValue.Value) result = true;
     134        else if (leftQuality < bestParentQuality) result = true;
     135        else result = false;
     136      }
    131137
    132138      BoolValue resultValue = ResultParameter.ActualValue;
     
    136142        resultValue.Value = result;
    137143      }
    138 
    139 
    140 
    141144      return base.Apply();
    142145    }
  • branches/DataAnalysis/HeuristicLab.Problems.DataAnalysis/3.3/Symbolic/SimpleArithmeticExpressionInterpreter.cs

    r4068 r4193  
    6565      public const byte Constant = 20;
    6666      public const byte Arg = 21;
     67      public const byte Differential = 22;
    6768    }
    6869
     
    8990      { typeof(Constant), OpCodes.Constant },
    9091      { typeof(Argument), OpCodes.Arg },
     92      { typeof(DifferentialVariable), OpCodes.Differential},
    9193    };
    9294    private const int ARGUMENT_STACK_SIZE = 1024;
     
    130132        var variableTreeNode = instr.dynamicNode as LaggedVariableTreeNode;
    131133        instr.iArg0 = (ushort)dataset.GetVariableIndex(variableTreeNode.VariableName);
     134      } else if (instr.opCode == OpCodes.Differential) {
     135        var variableTreeNode = instr.dynamicNode as DifferentialVariableTreeNode;
     136        instr.iArg0 = (ushort)dataset.GetVariableIndex(variableTreeNode.VariableName);
    132137      }
    133138      return instr;
     
    277282            return dataset[actualRow, currentInstr.iArg0] * lagVariableTreeNode.Weight;
    278283          }
     284        case OpCodes.Differential: {
     285            var diffTreeNode = currentInstr.dynamicNode as DifferentialVariableTreeNode;
     286            if (row < 2 || row >= dataset.Rows - 2) throw new ArgumentException("Out of range access to dataset row: " + row);
     287            return (-dataset[row + 2, currentInstr.iArg0] + 8 * dataset[row + 1, currentInstr.iArg0] - 8 * dataset[row - 1, currentInstr.iArg0] + dataset[row - 2, currentInstr.iArg0]) * (1.0/12.0) * diffTreeNode.Weight;
     288          }
     289
    279290        case OpCodes.Constant: {
    280291            var constTreeNode = currentInstr.dynamicNode as ConstantTreeNode;
Note: See TracChangeset for help on using the changeset viewer.