Changeset 5111 for branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/MetaOptimizationProblem.cs
- Timestamp:
- 12/15/10 23:41:33 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/MetaOptimizationProblem.cs
r5110 r5111 36 36 [Creatable("Problems")] 37 37 [StorableClass] 38 public sealed class MetaOptimizationProblem : SingleObjectiveProblem<I MetaOptimizationEvaluator, IParameterConfigurationCreator> {38 public sealed class MetaOptimizationProblem : SingleObjectiveProblem<IParameterConfigurationEvaluator, IParameterConfigurationCreator> { 39 39 public const string AlgorithmTypeParameterName = "AlgorithmType"; 40 40 public const string ProblemTypeParameterName = "ProblemType"; … … 42 42 public const string ParameterConfigurationParameterName = "InitialParameterConfigurationTree"; 43 43 public const string RepetitionsParameterName = "Repetitions"; 44 45 public const string IntValueManipulatorParameterName = "IntValueManipulator"; 46 public const string DoubleValueManipulatorParameterName = "DoubleValueManipulator"; 47 public const string IntValueCrossoverParameterName = "IntValueCrossover"; 48 public const string DoubleValueCrossoverParameterName = "DoubleValueCrossover"; 44 49 45 50 #region Parameter Properties … … 58 63 public IValueParameter<IntValue> RepetitionsParameter { 59 64 get { return (ValueParameter<IntValue>)Parameters[RepetitionsParameterName]; } 65 } 66 67 public IValueParameter<IIntValueManipulator> IntValueManipulatorParameter { 68 get { return (ValueParameter<IIntValueManipulator>)Parameters[IntValueManipulatorParameterName]; } 69 } 70 71 public IValueParameter<IDoubleValueManipulator> DoubleValueManipulatorParameter { 72 get { return (ValueParameter<IDoubleValueManipulator>)Parameters[DoubleValueManipulatorParameterName]; } 60 73 } 61 74 #endregion … … 91 104 Parameters.Add(new ValueParameter<IntValue>(RepetitionsParameterName, "The number of evaluations for each problem.", new IntValue(3))); 92 105 106 var validIntManipulators = new ItemSet<IIntValueManipulator>( ApplicationManager.Manager.GetInstances<IIntValueManipulator>()); 107 var validDoubleManipulators = new ItemSet<IDoubleValueManipulator>(ApplicationManager.Manager.GetInstances<IDoubleValueManipulator>()); 108 Parameters.Add(new ConstrainedValueParameter<IIntValueManipulator>(IntValueManipulatorParameterName, "", validIntManipulators, new UniformIntValueManipulator())); 109 Parameters.Add(new ConstrainedValueParameter<IDoubleValueManipulator>(DoubleValueManipulatorParameterName, "", validDoubleManipulators, new NormalDoubleValueManipulator())); 110 111 93 112 Maximization = new BoolValue(false); 94 113 SolutionCreator = new RandomParameterConfigurationCreator(); 95 Evaluator = new MetaOptimizationEvaluator();114 Evaluator = new ParameterConfigurationEvaluator(); 96 115 97 116 InitializeOperators(); … … 136 155 } 137 156 private void ParameterizeEvaluator() { 138 (( MetaOptimizationEvaluator)Evaluator).ParameterConfigurationParameter.ActualName = ((RandomParameterConfigurationCreator)SolutionCreator).ParameterConfigurationParameter.ActualName;157 ((ParameterConfigurationEvaluator)Evaluator).ParameterConfigurationParameter.ActualName = ((RandomParameterConfigurationCreator)SolutionCreator).ParameterConfigurationParameter.ActualName; 139 158 } 140 159 private void ParameterizeAnalyzer() {
Note: See TracChangeset
for help on using the changeset viewer.