Changeset 3338 for trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTreeCreator.cs
- Timestamp:
- 04/13/10 20:44:31 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/SymbolicExpressionTreeCreator.cs
r3294 r3338 35 35 [StorableClass] 36 36 public abstract class SymbolicExpressionTreeCreator : SymbolicExpressionTreeOperator, ISolutionCreator { 37 private const string MaxFunctionDefinitionsParameterName = "MaxFunctionDefinitions"; 38 private const string MaxFunctionArgumentsParameterName = "MaxFunctionArguments"; 39 #region Parameter Properties 40 public IValueLookupParameter<IntValue> MaxFunctionDefinitionsParameter { 41 get { return (IValueLookupParameter<IntValue>)Parameters[MaxFunctionDefinitionsParameterName]; } 42 } 43 public IValueLookupParameter<IntValue> MaxFunctionArgumentsParameter { 44 get { return (IValueLookupParameter<IntValue>)Parameters[MaxFunctionArgumentsParameterName]; } 45 } 46 #endregion 47 48 #region Propeties 49 public IntValue MaxFunctionDefinitions { 50 get { return MaxFunctionDefinitionsParameter.ActualValue; } 51 } 52 public IntValue MaxFunctionArguments { 53 get { return MaxFunctionArgumentsParameter.ActualValue; } 54 } 55 56 #endregion 37 57 protected SymbolicExpressionTreeCreator() 38 58 : base() { 59 Parameters.Add(new ValueLookupParameter<IntValue>(MaxFunctionDefinitionsParameterName, "Maximal number of function definitions in the symbolic expression tree.")); 60 Parameters.Add(new ValueLookupParameter<IntValue>(MaxFunctionArgumentsParameterName, "Maximal number of arguments of automatically defined functions in the symbolic expression tree.")); 39 61 } 40 62 41 63 public sealed override IOperation Apply() { 42 SymbolicExpressionTreeParameter.ActualValue = Create(Random Parameter.ActualValue, SymbolicExpressionGrammarParameter.ActualValue,43 MaxTreeSize Parameter.ActualValue, MaxTreeHeightParameter.ActualValue);64 SymbolicExpressionTreeParameter.ActualValue = Create(Random, SymbolicExpressionGrammar, 65 MaxTreeSize, MaxTreeHeight, MaxFunctionDefinitions, MaxFunctionArguments); 44 66 45 67 foreach (var node in SymbolicExpressionTreeParameter.ActualValue.IterateNodesPostfix()) { … … 49 71 } 50 72 51 protected abstract SymbolicExpressionTree Create(IRandom random, ISymbolicExpressionGrammar grammar, IntValue maxTreeSize, IntValue maxTreeHeight); 73 protected abstract SymbolicExpressionTree Create( 74 IRandom random, 75 ISymbolicExpressionGrammar grammar, 76 IntValue maxTreeSize, IntValue maxTreeHeight, 77 IntValue maxFunctionDefinitions, IntValue maxFunctionArguments 78 ); 52 79 } 53 80 }
Note: See TracChangeset
for help on using the changeset viewer.