using System.Collections.Generic; using HeuristicLab.Common; using HeuristicLab.Core; using HEAL.Attic; namespace HeuristicLab.Problems.MetaOptimization { [StorableType("0BEC2BB3-2E1C-4933-AA01-F3D10B8E19D2")] public class NullValueConfiguration : ValueConfiguration { public NullValueConfiguration() : base() { ActualValue = new ConstrainedValue(null, null, null, true); IsOptimizable = false; Name = "NullValueConfiguration"; } [StorableConstructor] protected NullValueConfiguration(StorableConstructorFlag _) : base(_) { } protected NullValueConfiguration(NullValueConfiguration original, Cloner cloner) : base(original, cloner) { } public override IDeepCloneable Clone(Cloner cloner) { return new NullValueConfiguration(this, cloner); } public override string ToString() { return "null"; } public override void Randomize(IRandom random) { } public override void Mutate(IRandom random, MutateDelegate mutate, IIntValueManipulator intValueManipulator, IDoubleValueManipulator doubleValueManipulator) { } public override void Cross(IRandom random, IOptimizable other, CrossDelegate cross, IIntValueCrossover intValueCrossover, IDoubleValueCrossover doubleValueCrossover) { } public override double CalculateSimilarity(IOptimizable optimizable) { return 1.0; } public override string ParameterInfoString { get { return "null"; } } public override void CollectOptimizedParameterNames(List parameterNames, string prefix) { } public override List GetAllOptimizables() { return new List(); } } }