Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/28/21 13:37:43 (3 years ago)
Author:
pfleck
Message:

#3040 Added a subvector symbol with ranges as subtrees.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/3040_VectorBasedGP/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentVectorTimeSeriesExpressionGrammar.cs

    r17830 r18060  
    5252
    5353    private const string VectorManipulationSymbolsName = "Vector Manipulation Symbols";
     54    private const string VectorSubVectorSymbolsName = "Vector SubVector Symbols";
    5455
    5556    private const string RealValuedSymbolsName = "Real Valued Symbols";
     
    167168
    168169      #region vector manipulation symbol declaration
    169       var subvector = new SubVector() { EnableWindowing = true };
     170      var subvectorLocal = new SubVector();
     171      var subvectorSubtree = new SubVectorSubtree();
    170172      #endregion
    171173
     
    199201      var vectorSymbols = new GroupSymbol(VectorSymbolsName, new List<ISymbol>() { vectorarithmeticSymbols, vectortrigonometricSymbols, vectorexponentialAndLogarithmicSymbols, vectorpowerSymbols, vectorterminalSymbols });
    200202
    201       var vectorManipulationSymbols = new GroupSymbol(VectorManipulationSymbolsName, new List<ISymbol>() { subvector });
     203      var vectorSubVectorSymbols = new GroupSymbol(VectorSubVectorSymbolsName, new List<ISymbol>() { subvectorLocal, subvectorSubtree });
     204      var vectorManipulationSymbols = new GroupSymbol(VectorManipulationSymbolsName, new List<ISymbol>() { vectorSubVectorSymbols });
    202205
    203206      //var realValuedSymbols = new GroupSymbol(RealValuedSymbolsName, new List<ISymbol> { scalarSymbols, vectorSymbols });
     
    260263      SetSubtreeCount(vectorterminalSymbols, 0, 0);
    261264
    262       SetSubtreeCount(subvector, 1, 1);
     265      SetSubtreeCount(subvectorLocal, 1, 1);
     266      SetSubtreeCount(subvectorSubtree, 3, 3);
    263267      #endregion
    264268
     
    273277      AddAllowedChildSymbol(root, constant, 1);
    274278      AddAllowedChildSymbol(aggregationSymbols, vectorSymbols, 0);
    275       AddAllowedChildSymbol(statisticsSymbols, subvector, 0);
     279      AddAllowedChildSymbol(statisticsSymbols, vectorSubVectorSymbols, 0);
    276280      AddAllowedChildSymbol(quantile, constantZeroToOne, 1);
    277281      AddAllowedChildSymbol(distancesSymbols, vectorSymbols, 1);
    278282      AddAllowedChildSymbol(distributionCharacteristicsSymbols, vectorSymbols, 0);
    279       AddAllowedChildSymbol(distributionCharacteristicsSymbols, subvector, 0);
     283      AddAllowedChildSymbol(distributionCharacteristicsSymbols, vectorSubVectorSymbols, 0);
    280284      AddAllowedChildSymbol(distributionCharacteristicsSymbols, constantZeroToOne, 1);
    281285      AddAllowedChildSymbol(timeSeriesDynamicsSymbols, vectorSymbols, 0);
    282       AddAllowedChildSymbol(timeSeriesDynamicsSymbols, subvector, 0);
     286      AddAllowedChildSymbol(timeSeriesDynamicsSymbols, vectorSubVectorSymbols, 0);
    283287      AddAllowedChildSymbol(timeSeriesDynamicsSymbols, constantZeroToOne, 1);
    284288      AddAllowedChildSymbol(timeSeriesDynamicsSymbols, constantZeroToOne, 2);
     
    292296      AddAllowedChildSymbol(vectorroot, constantZeroToOne, 1);
    293297
    294       AddAllowedChildSymbol(subvector, vectorSymbols);
     298      AddAllowedChildSymbol(subvectorLocal, vectorSymbols);
     299      AddAllowedChildSymbol(subvectorSubtree, vectorSymbols, 0);
     300      AddAllowedChildSymbol(subvectorSubtree, scalarSymbols, 1);
     301      AddAllowedChildSymbol(subvectorSubtree, scalarSymbols, 2);
    295302      #endregion
    296303
Note: See TracChangeset for help on using the changeset viewer.