Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
12/15/21 11:50:57 (3 years ago)
Author:
gkronber
Message:

#3140: merged r18091:18131 from branch to trunk

Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/HeuristicLab.Problems.DataAnalysis.Symbolic

  • trunk/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/ArithmeticExpressionGrammar.cs

    r17413 r18132  
    4949      var mul = new Multiplication();
    5050      var div = new Division();
     51      var number = new Number();
     52      number.MinValue = -20;
     53      number.MaxValue = 20;
    5154      var constant = new Constant();
    52       constant.MinValue = -20;
    53       constant.MaxValue = 20;
     55      constant.Enabled = false;
    5456      var variableSymbol = new HeuristicLab.Problems.DataAnalysis.Symbolic.Variable();
    5557      var binFactorVariableSymbol = new BinaryFactorVariable();
    5658      var factorVariableSymbol = new FactorVariable();
    5759
    58       var allSymbols = new List<Symbol>() { add, sub, mul, div, constant, variableSymbol, binFactorVariableSymbol, factorVariableSymbol };
     60      var allSymbols = new List<Symbol>() { add, sub, mul, div, number, constant, variableSymbol, binFactorVariableSymbol, factorVariableSymbol };
    5961      var functionSymbols = new List<Symbol>() { add, sub, mul, div };
    6062
     
    6567        SetSubtreeCount(funSymb, 1, 3);
    6668      }
     69      SetSubtreeCount(number, 0, 0);
    6770      SetSubtreeCount(constant, 0, 0);
    6871      SetSubtreeCount(variableSymbol, 0, 0);
  • trunk/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/FullFunctionalExpressionGrammar.cs

    r17413 r18132  
    118118      variableCondition.InitialFrequency = 0.0;
    119119
    120       var constant = new Constant();
    121       constant.MinValue = -20;
    122       constant.MaxValue = 20;
     120      var number = new Number();
     121      number.MinValue = -20;
     122      number.MaxValue = 20;
    123123      var variableSymbol = new HeuristicLab.Problems.DataAnalysis.Symbolic.Variable();
    124124      var binFactorVariable = new BinaryFactorVariable();
     
    130130      autoregressiveVariable.Enabled = false;
    131131
     132      var constant = new Constant();
     133      constant.Enabled = false;
     134
    132135      var allSymbols = new List<Symbol>() { add, sub, mul, div, aq, mean, abs, sin, cos, tan, log, square, cube, pow, sqrt, cubeRoot, root, exp, tanh,
    133136        airyA, airyB, bessel, cosineIntegral, dawson, erf, expIntegralEi, fresnelCosineIntegral, fresnelSineIntegral, gamma, hypCosineIntegral, hypSineIntegral, norm, psi, sineIntegral,
    134         @if, gt, lt, and, or, not,xor, timeLag, integral, derivative, constant, variableSymbol, binFactorVariable, factorVariable, laggedVariable,autoregressiveVariable, variableCondition };
     137        @if, gt, lt, and, or, not,xor, timeLag, integral, derivative, number, constant, variableSymbol, binFactorVariable, factorVariable, laggedVariable,autoregressiveVariable, variableCondition };
    135138      var unaryFunctionSymbols = new List<Symbol>() { abs, square, sqrt, cube, cubeRoot, sin, cos, tan, log, exp, tanh, not, timeLag, integral, derivative,
    136139        airyA, airyB, bessel, cosineIntegral, dawson, erf, expIntegralEi, fresnelCosineIntegral, fresnelSineIntegral, gamma, hypCosineIntegral, hypSineIntegral, norm, psi, sineIntegral
     
    139142      var binaryFunctionSymbols = new List<Symbol>() { pow, root, gt, lt, aq, variableCondition };
    140143      var ternarySymbols = new List<Symbol>() { add, sub, mul, div, mean, and, or, xor };
    141       var terminalSymbols = new List<Symbol>() { variableSymbol, binFactorVariable, factorVariable, constant, laggedVariable, autoregressiveVariable };
     144      var terminalSymbols = new List<Symbol>() { variableSymbol, binFactorVariable, factorVariable, number, constant, laggedVariable, autoregressiveVariable };
    142145
    143146      foreach (var symb in allSymbols)
  • trunk/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/LinearScalingGrammar.cs

    r17958 r18132  
    6666      var abs = new Absolute();
    6767      var aq = new AnalyticQuotient();
     68      var number = new Number();
     69      number.MinValue = -20;
     70      number.MaxValue = 20;
    6871      var constant = new Constant();
    69       constant.MinValue = -20;
    70       constant.MaxValue = 20;
     72      constant.Enabled = false;
    7173      var variableSymbol = new Variable();
    7274
     
    7880      //all other symbols
    7981      var allSymbols = new List<Symbol> {
    80         add, sub, mul, div, constant, variableSymbol, sin, cos, tan, log, square, sqrt, cube, cbrt, exp,
     82        add, sub, mul, div, number, constant, variableSymbol, sin, cos, tan, log, square, sqrt, cube, cbrt, exp,
    8183        tanh, aq, abs
    8284      };
     
    8688      var realValueSymbols = new List<Symbol> {
    8789         add, sub, mul, div, sin, cos, tan, tanh, exp, log, aq, abs, square, cube, sqrt, cbrt,
    88          variableSymbol, constant,
     90         variableSymbol, number, constant
    8991        };
    9092
     
    113115      //Define childs for offset
    114116      AddAllowedChildSymbol(offset, scaling, 0);
    115       AddAllowedChildSymbol(offset, constant, 1);
     117      AddAllowedChildSymbol(offset, number, 1);
    116118
    117119      //Define childs for scaling
    118120      foreach (var symb in allSymbols) AddAllowedChildSymbol(scaling, symb, 0);
    119       AddAllowedChildSymbol(scaling, constant, 1);
     121      AddAllowedChildSymbol(scaling, number, 1);
    120122
    121123      //Define childs for realvalue symbols
     
    129131      Symbols.First(s => s is CubeRoot).Enabled = false;
    130132      Symbols.First(s => s is Absolute).Enabled = false;
     133      Symbols.First(s => s is Constant).Enabled = false;
    131134    }
    132135  }
  • trunk/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentExpressionGrammar.cs

    r17413 r18132  
    105105      var derivative = new Derivative();
    106106
     107      var number = new Number();
     108      number.MinValue = -20;
     109      number.MaxValue = 20;
    107110      var constant = new Constant();
    108       constant.MinValue = -20;
    109       constant.MaxValue = 20;
     111      constant.Enabled = false;
    110112      var variableSymbol = new Variable();
    111113      var binFactorVariable = new BinaryFactorVariable();
     
    121123      var specialFunctions = new GroupSymbol(SpecialFunctionsName, new List<ISymbol> { abs, airyA, airyB, bessel, cosineIntegral, dawson, erf, expIntegralEi,
    122124        fresnelCosineIntegral,fresnelSineIntegral,gamma,hypCosineIntegral,hypSineIntegral,norm, psi, sineIntegral, analyticalQuotient});
    123       var terminalSymbols = new GroupSymbol(TerminalsName, new List<ISymbol> { constant, variableSymbol, binFactorVariable, factorVariable });
     125      var terminalSymbols = new GroupSymbol(TerminalsName, new List<ISymbol> { number, constant, variableSymbol, binFactorVariable, factorVariable });
    124126      var realValuedSymbols = new GroupSymbol(RealValuedSymbolsName, new List<ISymbol>() { arithmeticSymbols, trigonometricSymbols, exponentialAndLogarithmicSymbols, specialFunctions, terminalSymbols });
    125127
     
    193195      AddAllowedChildSymbol(powerSymbols, laggedVariable, 0);
    194196      AddAllowedChildSymbol(powerSymbols, autoregressiveVariable, 0);
     197      AddAllowedChildSymbol(powerSymbols, number, 1);
    195198      AddAllowedChildSymbol(powerSymbols, constant, 1);
    196199
     
    249252      Symbols.First(s => s.Name == ConditionalSymbolsName).Enabled = false;
    250253      Symbols.First(s => s.Name == TimeSeriesSymbolsName).Enabled = false;
     254      Symbols.First(s => s is Constant).Enabled = false;
    251255    }
    252256
     
    262266      Symbols.First(s => s.Name == PowerFunctionsName).Enabled = false;
    263267      Symbols.First(s => s.Name == TimeSeriesSymbolsName).Enabled = false;
     268      Symbols.First(s => s is Constant).Enabled = false;
    264269    }
    265270
     
    278283      Symbols.First(s => s is Integral).Enabled = false;
    279284      Symbols.First(s => s is TimeLag).Enabled = false;
     285      Symbols.First(s => s is Constant).Enabled = false;
    280286    }
    281287  }
Note: See TracChangeset for help on using the changeset viewer.