Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/13/14 13:03:24 (10 years ago)
Author:
bburlacu
Message:

#1772: HeuristicLab.Problems.DataAnalysis.Symbolic:

  • Merged trunk changes (SymbolicExpressionImporter)
  • Added Passthrough symbol (does not perform an operation, just transfers the input), adjusted interpreter and opcodes accordingly
  • Added diversity preserving crossover
  • Replaced IDistanceCalculator interface with ISymbolicDataAnalysisExpressionSimilarityCalculator and adjusted similarity calculators
  • Refactored tracing, moved functionality to the TraceCalculator (when this is complete the old code will be removed)
Location:
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4

    • Property svn:ignore
      •  

        old new  
        55TreeDistance
        66SymbolicDataAnalysisExpressionTreeMatching.cs
         7Importer
  • branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentExpressionGrammar.cs

    r11208 r11458  
    2626using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;
    2727using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
     28using HeuristicLab.Problems.DataAnalysis.Symbolic.Symbols;
     29
    2830namespace HeuristicLab.Problems.DataAnalysis.Symbolic {
    2931  [StorableClass]
     
    8688      var psi = new Psi();
    8789      var sineIntegral = new SineIntegral();
     90      var passthrough = new Passthrough();
    8891
    8992      var @if = new IfThenElse();
     
    113116      var exponentialAndLogarithmicSymbols = new GroupSymbol(ExponentialFunctionsName, new List<ISymbol> { exp, log });
    114117      var specialFunctions = new GroupSymbol(SpecialFunctionsName, new List<ISymbol> { airyA, airyB, bessel, cosineIntegral, dawson, erf, expIntegralEi,
    115         fresnelCosineIntegral,fresnelSineIntegral,gamma,hypCosineIntegral,hypSineIntegral,norm, psi, sineIntegral});
     118        fresnelCosineIntegral,fresnelSineIntegral,gamma,hypCosineIntegral,hypSineIntegral,norm, psi, sineIntegral, passthrough});
    116119      var terminalSymbols = new GroupSymbol(TerminalsName, new List<ISymbol> { constant, variableSymbol });
    117120      var realValuedSymbols = new GroupSymbol(RealValuedSymbolsName, new List<ISymbol>() { arithmeticSymbols, trigonometricSymbols, exponentialAndLogarithmicSymbols, specialFunctions, terminalSymbols });
     
    156159      SetSubtreeCount(laggedVariable, 0, 0);
    157160      SetSubtreeCount(autoregressiveVariable, 0, 0);
     161      SetSubtreeCount(passthrough, 1, 1);
    158162      #endregion
    159163
     
    224228      AddAllowedChildSymbol(derivative, powerSymbols);
    225229      AddAllowedChildSymbol(derivative, conditionSymbols);
     230
     231      AddAllowedChildSymbol(passthrough, realValuedSymbols);
     232      AddAllowedChildSymbol(passthrough, powerSymbols);
     233      AddAllowedChildSymbol(passthrough, conditionSymbols);
     234      AddAllowedChildSymbol(passthrough, timeSeriesSymbols);
     235      AddAllowedChildSymbol(passthrough, specialFunctions);
    226236      #endregion
    227237    }
Note: See TracChangeset for help on using the changeset viewer.