Changeset 11786 for branches/ProgrammableProblem/HeuristicLab.Problems.Programmable/3.3/New/SingleObjectiveProgrammableProblem.cs
- Timestamp:
- 01/16/15 11:14:50 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ProgrammableProblem/HeuristicLab.Problems.Programmable/3.3/New/SingleObjectiveProgrammableProblem.cs
r11780 r11786 20 20 #endregion 21 21 22 using System.Collections.Generic; 22 23 using System.Linq; 23 24 using HeuristicLab.Analysis; … … 44 45 protected SingleObjectiveProgrammableProblem() 45 46 : base() { 46 Parameters.Add(new FixedValueParameter<BoolValue>("Maximization", "Set to false if the problem should be minimized.", new BoolValue( Maximization)));47 Parameters.Add(new FixedValueParameter<BoolValue>("Maximization", "Set to false if the problem should be minimized.", new BoolValue())); 47 48 Parameters.Add(new OptionalValueParameter<DoubleValue>("BestKnownQuality", "The quality of the best known solution of this problem.")); 48 49 … … 66 67 public abstract double Evaluate(Individual individual, IRandom random); 67 68 public virtual void Analyze(Individual[] individuals, double[] qualities, ResultCollection results) { } 69 public virtual IEnumerable<Individual> GetNeighbors(Individual individual, IRandom random) { 70 return Enumerable.Empty<Individual>(); 71 } 68 72 73 74 protected override void OnEncodingChanged() { 75 base.OnEncodingChanged(); 76 var max = (BoolValue)Parameters["Maximization"].ActualValue; 77 max.Value = Maximization; 78 } 69 79 70 80 protected override void OnEvaluatorChanged() { … … 73 83 } 74 84 75 protected override void ParameterizeOperators() { 76 base.ParameterizeOperators(); 85 private void ParameterizeOperators() { 77 86 foreach (var op in Operators.OfType<ISingleObjectiveEvaluationOperator>()) 78 87 op.EvaluateFunc = Evaluate; 79 88 foreach (var op in Operators.OfType<ISingleObjectiveAnalysisOperator>()) 80 89 op.AnalyzeAction = Analyze; 90 foreach (var op in Operators.OfType<INeighborBasedOperator>()) 91 op.GetNeighborsFunc = GetNeighbors; 81 92 } 82 93
Note: See TracChangeset
for help on using the changeset viewer.