Changeset 8169
- Timestamp:
- 06/30/12 17:43:34 (12 years ago)
- Location:
- trunk/sources
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveTrainingParetoBestSolutionAnalyzer.cs
r7734 r8169 33 33 [Item("SymbolicClassificationSingleObjectiveTrainingParetoBestSolutionAnalyzer", "An operator that collects the training Pareto-best symbolic classification solutions for single objective symbolic classification problems.")] 34 34 [StorableClass] 35 public sealed class SymbolicClassificationSingleObjectiveTrainingParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<ISymbolicClassificationSolution>, 36 ISymbolicDataAnalysisInterpreterOperator, ISymbolicDataAnalysisBoundedOperator { 37 private const string ProblemDataParameterName = "ProblemData"; 38 private const string SymbolicDataAnalysisTreeInterpreterParameterName = "SymbolicDataAnalysisTreeInterpreter"; 39 private const string EstimationLimitsParameterName = "EstimationLimits"; 35 public sealed class SymbolicClassificationSingleObjectiveTrainingParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<IClassificationProblemData, ISymbolicClassificationSolution> { 40 36 private const string ApplyLinearScalingParameterName = "ApplyLinearScaling"; 41 37 #region parameter properties 42 public ILookupParameter<IClassificationProblemData> ProblemDataParameter {43 get { return (ILookupParameter<IClassificationProblemData>)Parameters[ProblemDataParameterName]; }44 }45 public ILookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter> SymbolicDataAnalysisTreeInterpreterParameter {46 get { return (ILookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter>)Parameters[SymbolicDataAnalysisTreeInterpreterParameterName]; }47 }48 public IValueLookupParameter<DoubleLimit> EstimationLimitsParameter {49 get { return (IValueLookupParameter<DoubleLimit>)Parameters[EstimationLimitsParameterName]; }50 }51 38 public IValueParameter<BoolValue> ApplyLinearScalingParameter { 52 39 get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; } … … 65 52 public SymbolicClassificationSingleObjectiveTrainingParetoBestSolutionAnalyzer() 66 53 : base() { 67 Parameters.Add(new LookupParameter<IClassificationProblemData>(ProblemDataParameterName, "The problem data for the symbolic classification solution."));68 Parameters.Add(new LookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter>(SymbolicDataAnalysisTreeInterpreterParameterName, "The symbolic data analysis tree interpreter for the symbolic expression tree."));69 Parameters.Add(new ValueLookupParameter<DoubleLimit>(EstimationLimitsParameterName, "The lower and upper limit for the estimated values produced by the symbolic classification model."));70 54 Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic classification solution should be linearly scaled.", new BoolValue(false))); 71 55 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveValidationParetoBestSolutionAnalyzer.cs
r7734 r8169 33 33 [Item("SymbolicClassificationSingleObjectiveValidationParetoBestSolutionAnalyzer", "An operator that collects the validation Pareto-best symbolic classification solutions for single objective symbolic classification problems.")] 34 34 [StorableClass] 35 public sealed class SymbolicClassificationSingleObjectiveValidationParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer<ISymbolicClassificationSolution, ISymbolicClassificationSingleObjectiveEvaluator, IClassificationProblemData>, 36 ISymbolicDataAnalysisInterpreterOperator, ISymbolicDataAnalysisBoundedOperator { 37 private const string EstimationLimitsParameterName = "EstimationLimits"; 35 public sealed class SymbolicClassificationSingleObjectiveValidationParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer<ISymbolicClassificationSolution, ISymbolicClassificationSingleObjectiveEvaluator, IClassificationProblemData> { 38 36 private const string ApplyLinearScalingParameterName = "ApplyLinearScaling"; 39 37 #region parameter properties 40 public IValueLookupParameter<DoubleLimit> EstimationLimitsParameter {41 get { return (IValueLookupParameter<DoubleLimit>)Parameters[EstimationLimitsParameterName]; }42 }43 38 public IValueParameter<BoolValue> ApplyLinearScalingParameter { 44 39 get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; } … … 57 52 public SymbolicClassificationSingleObjectiveValidationParetoBestSolutionAnalyzer() 58 53 : base() { 59 Parameters.Add(new ValueLookupParameter<DoubleLimit>(EstimationLimitsParameterName, "The lower and upper limit for the estimated values produced by the symbolic classification model."));60 54 Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic classification solution should be linearly scaled.", new BoolValue(false))); 61 55 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveTrainingParetoBestSolutionAnalyzer.cs
r7726 r8169 33 33 [Item("SymbolicRegressionSingleObjectiveTrainingParetoBestSolutionAnalyzer", "An operator that collects the training Pareto-best symbolic regression solutions for single objective symbolic regression problems.")] 34 34 [StorableClass] 35 public sealed class SymbolicRegressionSingleObjectiveTrainingParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<ISymbolicRegressionSolution>, 36 ISymbolicDataAnalysisInterpreterOperator, ISymbolicDataAnalysisBoundedOperator { 37 private const string ProblemDataParameterName = "ProblemData"; 38 private const string SymbolicDataAnalysisTreeInterpreterParameterName = "SymbolicDataAnalysisTreeInterpreter"; 39 private const string EstimationLimitsParameterName = "EstimationLimits"; 35 public sealed class SymbolicRegressionSingleObjectiveTrainingParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<IRegressionProblemData, ISymbolicRegressionSolution> { 40 36 private const string ApplyLinearScalingParameterName = "ApplyLinearScaling"; 41 37 #region parameter properties 42 public ILookupParameter<IRegressionProblemData> ProblemDataParameter {43 get { return (ILookupParameter<IRegressionProblemData>)Parameters[ProblemDataParameterName]; }44 }45 public ILookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter> SymbolicDataAnalysisTreeInterpreterParameter {46 get { return (ILookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter>)Parameters[SymbolicDataAnalysisTreeInterpreterParameterName]; }47 }48 public IValueLookupParameter<DoubleLimit> EstimationLimitsParameter {49 get { return (IValueLookupParameter<DoubleLimit>)Parameters[EstimationLimitsParameterName]; }50 }51 38 public IValueParameter<BoolValue> ApplyLinearScalingParameter { 52 39 get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; } … … 65 52 public SymbolicRegressionSingleObjectiveTrainingParetoBestSolutionAnalyzer() 66 53 : base() { 67 Parameters.Add(new LookupParameter<IRegressionProblemData>(ProblemDataParameterName, "The problem data for the symbolic regression solution."));68 Parameters.Add(new LookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter>(SymbolicDataAnalysisTreeInterpreterParameterName, "The symbolic data analysis tree interpreter for the symbolic expression tree."));69 Parameters.Add(new ValueLookupParameter<DoubleLimit>(EstimationLimitsParameterName, "The lower and upper limit for the estimated values produced by the symbolic regression model."));70 54 Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic regression solution should be linearly scaled.", new BoolValue(true))); 71 55 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveValidationParetoBestSolutionAnalyzer.cs
r7734 r8169 33 33 [Item("SymbolicRegressionSingleObjectiveValidationParetoBestSolutionAnalyzer", "An operator that collects the validation Pareto-best symbolic regression solutions for single objective symbolic regression problems.")] 34 34 [StorableClass] 35 public sealed class SymbolicRegressionSingleObjectiveValidationParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer<ISymbolicRegressionSolution, ISymbolicRegressionSingleObjectiveEvaluator, IRegressionProblemData>, 36 ISymbolicDataAnalysisInterpreterOperator, ISymbolicDataAnalysisBoundedOperator { 37 private const string EstimationLimitsParameterName = "EstimationLimits"; 35 public sealed class SymbolicRegressionSingleObjectiveValidationParetoBestSolutionAnalyzer : SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer<ISymbolicRegressionSolution, ISymbolicRegressionSingleObjectiveEvaluator, IRegressionProblemData> { 38 36 private const string ApplyLinearScalingParameterName = "ApplyLinearScaling"; 39 37 #region parameter properties 40 public IValueLookupParameter<DoubleLimit> EstimationLimitsParameter {41 get { return (IValueLookupParameter<DoubleLimit>)Parameters[EstimationLimitsParameterName]; }42 }43 38 public IValueParameter<BoolValue> ApplyLinearScalingParameter { 44 39 get { return (IValueParameter<BoolValue>)Parameters[ApplyLinearScalingParameterName]; } … … 57 52 public SymbolicRegressionSingleObjectiveValidationParetoBestSolutionAnalyzer() 58 53 : base() { 59 Parameters.Add(new ValueLookupParameter<DoubleLimit>(EstimationLimitsParameterName, "The lower and upper limit for the estimated values produced by the symbolic regression model."));60 54 Parameters.Add(new ValueParameter<BoolValue>(ApplyLinearScalingParameterName, "Flag that indicates if the produced symbolic regression solution should be linearly scaled.", new BoolValue(true))); 61 55 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Analyzers/SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer.cs
r8126 r8169 20 20 #endregion 21 21 22 using System; 22 23 using System.Collections.Generic; 23 24 using System.Linq; … … 26 27 using HeuristicLab.Data; 27 28 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Operators;29 29 using HeuristicLab.Optimization; 30 30 using HeuristicLab.Parameters; 31 31 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 32 using System;33 32 34 33 namespace HeuristicLab.Problems.DataAnalysis.Symbolic { … … 38 37 [Item("SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer", "An operator that analyzes the Pareto-best symbolic data analysis solution for single objective symbolic data analysis problems.")] 39 38 [StorableClass] 40 public abstract class SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<T> : SymbolicDataAnalysisSingleObjectiveAnalyzer 41 where T : class, ISymbolicDataAnalysisSolution { 39 public abstract class SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<S, T> : SymbolicDataAnalysisSingleObjectiveAnalyzer, ISymbolicDataAnalysisInterpreterOperator, ISymbolicDataAnalysisBoundedOperator 40 where T : class, ISymbolicDataAnalysisSolution 41 where S : class, IDataAnalysisProblemData { 42 private const string ProblemDataParameterName = "ProblemData"; 42 43 private const string TrainingBestSolutionsParameterName = "Best training solutions"; 43 44 private const string TrainingBestSolutionQualitiesParameterName = "Best training solution qualities"; 44 45 private const string ComplexityParameterName = "Complexity"; 46 private const string SymbolicDataAnalysisTreeInterpreterParameterName = "SymbolicDataAnalysisTreeInterpreter"; 47 private const string EstimationLimitsParameterName = "EstimationLimits"; 45 48 46 49 public override bool EnabledByDefault { … … 58 61 get { return (IScopeTreeLookupParameter<DoubleValue>)Parameters[ComplexityParameterName]; } 59 62 } 63 public ILookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter> SymbolicDataAnalysisTreeInterpreterParameter { 64 get { return (ILookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter>)Parameters[SymbolicDataAnalysisTreeInterpreterParameterName]; } 65 } 66 public ILookupParameter<S> ProblemDataParameter { 67 get { return (ILookupParameter<S>)Parameters[ProblemDataParameterName]; } 68 } 69 public IValueLookupParameter<DoubleLimit> EstimationLimitsParameter { 70 get { return (IValueLookupParameter<DoubleLimit>)Parameters[EstimationLimitsParameterName]; } 71 } 60 72 #endregion 61 73 #region properties … … 72 84 [StorableConstructor] 73 85 protected SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer(bool deserializing) : base(deserializing) { } 74 protected SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer(SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer< T> original, Cloner cloner) : base(original, cloner) { }86 protected SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer(SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer<S, T> original, Cloner cloner) : base(original, cloner) { } 75 87 public SymbolicDataAnalysisSingleObjectiveTrainingParetoBestSolutionAnalyzer() 76 88 : base() { 89 Parameters.Add(new LookupParameter<S>(ProblemDataParameterName, "The problem data for the symbolic data analysis solution.")); 77 90 Parameters.Add(new LookupParameter<ItemList<T>>(TrainingBestSolutionsParameterName, "The training best (Pareto-optimal) symbolic data analysis solutions.")); 78 91 Parameters.Add(new LookupParameter<ItemList<DoubleArray>>(TrainingBestSolutionQualitiesParameterName, "The qualities of the training best (Pareto-optimal) solutions.")); 79 92 Parameters.Add(new ScopeTreeLookupParameter<DoubleValue>(ComplexityParameterName, "The complexity of each tree.")); 93 Parameters.Add(new LookupParameter<ISymbolicDataAnalysisExpressionTreeInterpreter>(SymbolicDataAnalysisTreeInterpreterParameterName, "The symbolic data analysis tree interpreter for the symbolic expression tree.")); 94 Parameters.Add(new ValueLookupParameter<DoubleLimit>(EstimationLimitsParameterName, "The lower and upper limit for the estimated values produced by the symbolic classification model.")); 80 95 } 81 96 -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Analyzers/SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer.cs
r8126 r8169 20 20 #endregion 21 21 22 using System; 22 23 using System.Collections.Generic; 23 24 using System.Linq; … … 26 27 using HeuristicLab.Data; 27 28 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Operators;29 29 using HeuristicLab.Optimization; 30 30 using HeuristicLab.Parameters; 31 31 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 32 using System;33 32 34 33 namespace HeuristicLab.Problems.DataAnalysis.Symbolic { … … 38 37 [Item("SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer", "An operator that analyzes the Pareto-best symbolic data analysis solution for single objective symbolic data analysis problems.")] 39 38 [StorableClass] 40 public abstract class SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer<S, T, U> : SymbolicDataAnalysisSingleObjectiveValidationAnalyzer<T, U> 39 public abstract class SymbolicDataAnalysisSingleObjectiveValidationParetoBestSolutionAnalyzer<S, T, U> : SymbolicDataAnalysisSingleObjectiveValidationAnalyzer<T, U>, ISymbolicDataAnalysisBoundedOperator 41 40 where S : class, ISymbolicDataAnalysisSolution 42 41 where T : class, ISymbolicDataAnalysisSingleObjectiveEvaluator<U> … … 45 44 private const string ValidationBestSolutionQualitiesParameterName = "Best validation solution qualities"; 46 45 private const string ComplexityParameterName = "Complexity"; 46 private const string EstimationLimitsParameterName = "EstimationLimits"; 47 47 48 48 public override bool EnabledByDefault { … … 60 60 get { return (IScopeTreeLookupParameter<DoubleValue>)Parameters[ComplexityParameterName]; } 61 61 } 62 public IValueLookupParameter<DoubleLimit> EstimationLimitsParameter { 63 get { return (IValueLookupParameter<DoubleLimit>)Parameters[EstimationLimitsParameterName]; } 64 } 65 62 66 #endregion 63 67 #region properties … … 80 84 Parameters.Add(new LookupParameter<ItemList<DoubleArray>>(ValidationBestSolutionQualitiesParameterName, "The qualities of the validation best (Pareto-optimal) solutions.")); 81 85 Parameters.Add(new ScopeTreeLookupParameter<DoubleValue>(ComplexityParameterName, "The complexity of each tree.")); 86 Parameters.Add(new ValueLookupParameter<DoubleLimit>(EstimationLimitsParameterName, "The lower and upper limit for the estimated values produced by the symbolic classification model.")); 82 87 } 83 88 -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicDataAnalysisProblem.cs
r7823 r8169 203 203 Operators.Add(new SymbolicExpressionSymbolFrequencyAnalyzer()); 204 204 Operators.Add(new SymbolicDataAnalysisVariableFrequencyAnalyzer()); 205 Operators.Add(new SymbolicDataAnalysisComplexityAnalyzer());206 205 Operators.Add(new MinAverageMaxSymbolicExpressionTreeLengthAnalyzer()); 207 206 Operators.Add(new SymbolicExpressionTreeLengthAnalyzer());
Note: See TracChangeset
for help on using the changeset viewer.