Free cookie consent management tool by TermsFeed Policy Generator

source: branches/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Encoding/ValueConfigurations/NullValueConfiguration.cs @ 9823

Last change on this file since 9823 was 9823, checked in by jkarder, 11 years ago

#1099: adapted MetaOpt NamedItems

File size: 1.7 KB
Line 
1using System.Collections.Generic;
2using HeuristicLab.Common;
3using HeuristicLab.Core;
4using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
5
6namespace HeuristicLab.Problems.MetaOptimization {
7  [StorableClass]
8  public class NullValueConfiguration : ValueConfiguration {
9
10    public NullValueConfiguration()
11      : base() {
12      ActualValue = new ConstrainedValue(null, null, null, true);
13      IsOptimizable = false;
14      Name = "Null Value Configuration";
15    }
16    [StorableConstructor]
17    protected NullValueConfiguration(bool deserializing) : base(deserializing) { }
18    protected NullValueConfiguration(NullValueConfiguration original, Cloner cloner)
19      : base(original, cloner) {
20    }
21    public override IDeepCloneable Clone(Cloner cloner) {
22      return new NullValueConfiguration(this, cloner);
23    }
24
25    public override string ToString() {
26      return "null";
27    }
28
29    public override void Randomize(IRandom random) { }
30
31    public override void Mutate(IRandom random, MutateDelegate mutate, IIntValueManipulator intValueManipulator, IDoubleValueManipulator doubleValueManipulator) { }
32
33    public override void Cross(IRandom random, IOptimizable other, CrossDelegate cross, IIntValueCrossover intValueCrossover, IDoubleValueCrossover doubleValueCrossover) { }
34
35    public override double CalculateSimilarity(IOptimizable optimizable) {
36      return 1.0;
37    }
38
39    public override string ParameterInfoString {
40      get { return "null"; }
41    }
42
43    public override void CollectOptimizedParameterNames(List<string> parameterNames, string prefix) { }
44
45    public override List<IOptimizable> GetAllOptimizables() {
46      return new List<IOptimizable>();
47    }
48  }
49}
Note: See TracBrowser for help on using the repository browser.