Free cookie consent management tool by TermsFeed Policy Generator

source: addons/HeuristicLab.MetaOptimization/HeuristicLab.Problems.MetaOptimization/3.3/Encoding/ValueConfigurations/NullValueConfiguration.cs @ 16574

Last change on this file since 16574 was 16574, checked in by gkronber, 5 years ago

#2520: changed HeuristicLab.MetaOptimization addon to compile with new HL.Persistence

File size: 1.8 KB
Line 
1using System.Collections.Generic;
2using HeuristicLab.Common;
3using HeuristicLab.Core;
4using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
5using HEAL.Attic;
6
7namespace HeuristicLab.Problems.MetaOptimization {
8  [StorableType("0BEC2BB3-2E1C-4933-AA01-F3D10B8E19D2")]
9  public class NullValueConfiguration : ValueConfiguration {
10    public NullValueConfiguration()
11      : base() {
12      ActualValue = new ConstrainedValue(null, null, null, true);
13      IsOptimizable = false;
14      Name = "NullValueConfiguration";
15    }
16    [StorableConstructor]
17    protected NullValueConfiguration(StorableConstructorFlag _) : base(_) { }
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.