Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
01/18/11 16:09:35 (14 years ago)
Author:
gkronber
Message:

Implemented multiplicative manipulation of constants and variable weights. #1384

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/Symbolic/Symbols/Variable.cs

    r4989 r5326  
    7878      }
    7979    }
     80    [Storable(DefaultValue = 0.0)]
     81    private double multiplicativeWeightManipulatorSigma;
     82    public double MultiplicativeWeightManipulatorSigma {
     83      get { return multiplicativeWeightManipulatorSigma; }
     84      set {
     85        if (multiplicativeWeightManipulatorSigma < 0.0) throw new ArgumentException("Negative sigma is not allowed.");
     86        if (value != multiplicativeWeightManipulatorSigma) {
     87          multiplicativeWeightManipulatorSigma = value;
     88          OnChanged(EventArgs.Empty);
     89        }
     90      }
     91    }
    8092    private List<string> variableNames;
    8193    [Storable]
     
    91103    #endregion
    92104    [StorableConstructor]
    93     protected Variable(bool deserializing) : base(deserializing) {
     105    protected Variable(bool deserializing)
     106      : base(deserializing) {
    94107      variableNames = new List<string>();
    95108    }
     
    101114      weightManipulatorMu = original.weightManipulatorMu;
    102115      weightManipulatorSigma = original.weightManipulatorSigma;
     116      multiplicativeWeightManipulatorSigma = original.multiplicativeWeightManipulatorSigma;
    103117    }
    104118    public Variable() : this("Variable", "Represents a variable value.") { }
     
    109123      weightManipulatorMu = 0.0;
    110124      weightManipulatorSigma = 1.0;
     125      multiplicativeWeightManipulatorSigma = 0.03;
    111126      variableNames = new List<string>();
    112127    }
Note: See TracChangeset for help on using the changeset viewer.